


from __future__ import annotations






def 							__lowercase       (			__lowerCAmelCase							:    List[Any] ,   __lowerCAmelCase							:    Optional[Any] ,   __lowerCAmelCase							:    str ,   __lowerCAmelCase							:    List[str]       ):  # noqa: E741
							while r - l > 1:
														a__					=					(l + r) // 2
														if v[m] >= key:
																					a__					=					m
														else:
																					a__					=					m  # noqa: E741
							return r






def 							__lowercase       (			__lowerCAmelCase							:    list[int]       ):
							if len(__lowerCAmelCase       ) == 0:
														return 0

							a__					=					[0] * len(__lowerCAmelCase       )
							a__					=					1

							a__					=					v[0]

							for i in range(1 ,   len(__lowerCAmelCase       )       ):
														if v[i] < tail[0]:
																					a__					=					v[i]
														elif v[i] > tail[length - 1]:
																					a__					=					v[i]
																					length += 1
														else:
																					a__					=					v[i]

							return length


if __name__ == "__main__":
						import doctest

						doctest.testmod()








def 							__lowercase       (			__lowerCAmelCase							:    int       ):

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

							a__					=					[True] * (num + 1)

							a__					=					2
							while p * p <= num:
														if primes[p]:
																					for i in range(p * p ,   num + 1 ,   __lowerCAmelCase       ):
																												a__					=					False
														p += 1

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


if __name__ == "__main__":
						import doctest

						doctest.testmod()

						snake_case							:	Optional[Any]					      =				int(input('''Enter a positive integer: ''').strip())
						print(prime_sieve_eratosthenes(user_num))




