


'''simple docstring'''
from __future__ import annotations

import math





def 					a__       (					lowerCAmelCase__						)    ->	list[int]:

    if num <= 0:
        UpperCAmelCase__			:		Optional[int]													=				F"""{num}: Invalid input, please enter a positive integer."""
        raise ValueError(lowerCAmelCase__						)

    UpperCAmelCase__			:		Optional[Any]													=				[True] * (num + 1)
    UpperCAmelCase__			:		int													=				[]
    UpperCAmelCase__			:		Any													=				2
    UpperCAmelCase__			:		Any													=				int(math.sqrt(lowerCAmelCase__						)						)

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

            # Set multiples of start be False
            for i in range(start * start  ,					num + 1  ,					lowerCAmelCase__						):
                if sieve[i] is True:
                    UpperCAmelCase__			:		List[Any]													=				False

        start += 1

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

    return prime


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




'''simple docstring'''
def 					a__       (					lowerCAmelCase__						)    ->	int:
    if a < 0:
        raise ValueError('''Input value must be a positive integer'''						)
    elif isinstance(lowerCAmelCase__  ,					lowerCAmelCase__						):
        raise TypeError('''Input value must be a \'int\' type'''						)
    return bin(lowerCAmelCase__						).count('''1'''						)


if __name__ == "__main__":
  import doctest

  doctest.testmod()
