# 自作ライブラリ # https://github.com/takumi-okamoto/competitive-programming-public/tree/main/mylib import sys # sys.setrecursionlimit(10**8) def debug(*args): print(*args, file=sys.stderr) def sieve_of_eratosthenes(limit: int) -> list[int]: sieve = [True] * (limit + 1) sieve[0] = sieve[1] = False for start in range(2, int(limit**0.5) + 1): if sieve[start]: for i in range(start * start, limit + 1, start): sieve[i] = False return [num for num, is_prime in enumerate(sieve) if is_prime] def main(): n = int(input()) primes = sieve_of_eratosthenes(int(n**0.5) + 2) ans = 0 for p in primes: x = p * p while x <= n: ans += x x *= p print(ans) if __name__ == "__main__": main()