





"""simple docstring"""



from __future__ import annotations

import math







def 		__lowercase     (   snake_case_  :  int						)   ->list[int]:



    '''simple docstring'''







    if num <= 0:
        __A    :						Dict						 =     F"""{num}: Invalid input, please enter a positive integer."""
        raise ValueError(snake_case_						)

    __A    :						Union[str, Any]						 =     [True] * (num + 1)
    __A    :						int						 =     []
    __A    :						int						 =     2
    __A    :						str						 =     int(math.sqrt(snake_case_						)						)

    while start <= end:
        # If start is a prime
        if sieve[start] is True:
            prime.append(snake_case_						)

            # Set multiples of start be False
            for i in range(start * start				,num + 1				,snake_case_						):
                if sieve[i] is True:
                    __A    :						str						 =     False

        start += 1

    for j in range(end + 1				,num + 1						):
        if sieve[j] is True:
            prime.append(snake_case_						)

    return prime


if __name__ == "__main__":
       print(prime_sieve(int(input("""Enter a positive integer: """).strip())))





'''simple docstring'''





def 	lowerCAmelCase_				(					snake_case_       : int					,    snake_case_       : int			)    ->      int:


     '''simple docstring'''




     return x if y == 0 else greatest_common_divisor(snake_case_					,    x % y			)





def 	lowerCAmelCase_				(					snake_case_       : int					,    snake_case_       : int			)    ->      int:


     '''simple docstring'''




     return (x * y) // greatest_common_divisor(snake_case_					,    snake_case_			)





def 	lowerCAmelCase_				(					snake_case_       : int = 20			)    ->      int:


     '''simple docstring'''




     UpperCAmelCase_           =   1
     for i in range(1					,    n + 1			):
          UpperCAmelCase_           =   lcm(snake_case_					,    snake_case_			)
     return g


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




