import random

from .binary_exp_mod import bin_exp_mod







def     _a				(      lowercase__  :			Dict     ,  lowercase__  :			str=10_00 ):







     '''simple docstring'''


     if n < 2:
          return False

     if n % 2 == 0:
          return n == 2

     # this means n is odd
     SCREAMING_SNAKE_CASE__				:				Dict			=		n - 1
     SCREAMING_SNAKE_CASE__				:				List[str]			=		0
     while d % 2 == 0:
          d /= 2
          exp += 1

     # n - 1=d*(2**exp)
     SCREAMING_SNAKE_CASE__				:				int			=		0
     while count < prec:
          SCREAMING_SNAKE_CASE__				:				str			=		random.randint(2     ,  n - 1 )
          SCREAMING_SNAKE_CASE__				:				Dict			=		bin_exp_mod(lowercase__     ,  lowercase__     ,  lowercase__ )
          if b != 1:
               SCREAMING_SNAKE_CASE__				:				List[Any]			=		True
               for _ in range(lowercase__ ):
                    if b == n - 1:
                         SCREAMING_SNAKE_CASE__				:				Union[str, Any]			=		False
                         break
                    SCREAMING_SNAKE_CASE__				:				Any			=		b * b
                    b %= n
               if flag:
                    return False
               count += 1
     return True


if __name__ == "__main__":
      SCREAMING_SNAKE_CASE__		:					List[Any]						=					abs(int(input("Enter bound : ").strip()))
      print("Here's the list of primes:")
      print(", ".join(str(i) for i in range(n + 1) if is_prime_big(i)))




def     _a				(      lowercase__  :			int = 1_00_00_00 ):







     '''simple docstring'''


     SCREAMING_SNAKE_CASE__				:				str			=		[i - 1 for i in range(limit + 1 )]

     for i in range(2     ,  limit + 1 ):
          if phi[i] == i - 1:
               for j in range(2 * i     ,  limit + 1     ,  lowercase__ ):
                    phi[j] -= phi[j] // i

     return sum(phi[2 : limit + 1] )


if __name__ == "__main__":
      print(solution())



