






def      lowercase__      (     __snake_case    :							int = 1_000_000  ):


					'''simple docstring'''


					UpperCAmelCase_    :      List[Any]            =						set(range(3     ,       __snake_case     ,       2  )  )
					primes.add(2  )
					for p in range(3     ,       __snake_case     ,       2  ):
										if p not in primes:
															continue
										primes.difference_update(set(range(p * p     ,       __snake_case     ,       __snake_case  )  )  )

					UpperCAmelCase_    :      List[str]            =						[float(__snake_case  ) for n in range(limit + 1  )]

					for p in primes:
										for n in range(__snake_case     ,       limit + 1     ,       __snake_case  ):
															phi[n] *= 1 - 1 / p

					return int(sum(phi[2:]  )  )


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













"""simple docstring"""





def  __A   (_SCREAMING_SNAKE_CASE     ,   _SCREAMING_SNAKE_CASE			)					->bool:





  """simple docstring"""


  return numa ^ numa < 0


if __name__ == "__main__":
  import doctest

  doctest.testmod()
