from math import isqrt def sieve(n: int): """エラトステネスの篩(O(n log log n))""" is_prime = [True] * (n + 1) is_prime[0] = is_prime[1] = False for i in range(2, isqrt(n) + 1): if is_prime[i]: for j in range(i * i, n + 1, i): is_prime[j] = False return [i for i in range(n + 1) if is_prime[i]] N = int(input()) primes = sieve(isqrt(N)) ans = 0 for e in range(2, 40): for p in primes: if p**e > N: break ans += p**e print(ans)