






"""simple docstring"""



import math
from collections.abc import Generator
def 						_SCREAMING_SNAKE_CASE			(   __snake_case      :  int   ):





  '''simple docstring'''





  lowercase							   =	(i for i in range(1		, (max_n + 1)   ))
  for i in (n for n in numbers if n > 1):
    for j in range(2		, __lowercase   ):
      if (i % j) == 0:
        break
    else:
      yield i
def 						_SCREAMING_SNAKE_CASE			(   __snake_case      :  int   ):





  '''simple docstring'''





  lowercase							   =	(i for i in range(1		, (max_n + 1)   ))
  for i in (n for n in numbers if n > 1):
    # only need to check for factors up to sqrt(i)
    lowercase							   =	int(math.sqrt(__lowercase   )   ) + 1
    for j in range(2		, __lowercase   ):
      if (i % j) == 0:
        break
    else:
      yield i
def 						_SCREAMING_SNAKE_CASE			(   __snake_case      :  int   ):





  '''simple docstring'''





  lowercase							   =	(i for i in range(1		, (max_n + 1)		, 2   ))
  # It's useless to test even numbers as they will not be prime
  if max_n > 2:
    yield 2  # Because 2 will not be tested, it's necessary to yield it now
  for i in (n for n in numbers if n > 1):
    lowercase							   =	int(math.sqrt(__lowercase   )   ) + 1
    for j in range(3		, __lowercase		, 2   ):
      # As we removed the even numbers, we don't need them now
      if (i % j) == 0:
        break
    else:
      yield i
def 						_SCREAMING_SNAKE_CASE			(   ):





  '''simple docstring'''





  from timeit import timeit

  lowercase							   =	'from __main__ import slow_primes, primes, fast_primes'
  print(timeit('slow_primes(1_000_000_000_000)'		, setup=__lowercase		, number=1_00_00_00   )   )
  print(timeit('primes(1_000_000_000_000)'		, setup=__lowercase		, number=1_00_00_00   )   )
  print(timeit('fast_primes(1_000_000_000_000)'		, setup=__lowercase		, number=1_00_00_00   )   )


if __name__ == "__main__":
    _UpperCamelCase						=		int(input('Calculate primes up to:\n>> ').strip())
    for ret in primes(number):
        print(ret)
    benchmark()










"""simple docstring"""



_UpperCamelCase		:  str						=		1_0**8
def 						_SCREAMING_SNAKE_CASE			(   __snake_case      :  int   ):





  '''simple docstring'''





  if n % 10 == 0:
    return False
  lowercase							   =	str(__snake_case   )
  return s == s[::-1]
def 						_SCREAMING_SNAKE_CASE			(   ):





  '''simple docstring'''





  lowercase							   =	set()
  lowercase							   =	1
  lowercase							   =	5
  while sum_squares < LIMIT:
    lowercase							   =	first_square + 1
    while sum_squares < LIMIT:
      if is_palindrome(__snake_case   ):
        answer.add(__snake_case   )
      last_square += 1
      sum_squares += last_square**2
    first_square += 1
    lowercase							   =	first_square**2 + (first_square + 1) ** 2

  return sum(__snake_case   )


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


