
"""simple docstring"""
def  _lowerCAmelCase     (  lowerCamelCase__				:				Tuple,    lowerCamelCase__				:				Tuple,    lowerCamelCase__				:				Union[str, Any]					)	->     Dict:


  if exponent == 1:
    return base
  if exponent % 2 == 0:
    _SCREAMING_SNAKE_CASE :					Dict				     =			_modexpt(a__,    exponent // 2,    a__					) % modulo_value
    return (x * x) % modulo_value
  else:
    return (base * _modexpt(a__,    exponent - 1,    a__					)) % modulo_value





def  _lowerCAmelCase     (  lowerCamelCase__				:				str = 1_7_7_7,    lowerCamelCase__				:				Any = 1_8_5_5,    lowerCamelCase__				:				List[str] = 8					)	->     Optional[int]:
  _SCREAMING_SNAKE_CASE :					Tuple				     =			base
  for _ in range(1,    a__					):
    _SCREAMING_SNAKE_CASE :					Optional[int]				     =			_modexpt(a__,    a__,    1_0**digits					)

  return result


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






'''simple docstring'''



from math import isqrt







def   a__			(    a__		):




     """simple docstring"""


     return all(number % divisor != 0 for divisor in range(2 ,       isqrt(a__		) + 1		)		)







def   a__			(    a__ = 10**6		):




     """simple docstring"""


     __SCREAMING_SNAKE_CASE      = 0
     __SCREAMING_SNAKE_CASE      = 1
     __SCREAMING_SNAKE_CASE      = 7
     while prime_candidate < max_prime:
          primes_count += is_prime(a__		)

          cube_index += 1
          prime_candidate += 6 * cube_index

     return primes_count


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






