#include #define ll long long #define ld long double #define rep(i, r) for(int i = 0; i < (int)(r); i++) #define reap(i, k, r) for(ll i = (ll)(k); i < (ll)(r); i++) #define ALL(x) std::begin(x), std::end(x) #define rALL(x) std::rbegin(x), std::rend(x) #define MOD 998244353 using namespace std; int main(){ ll ans = 0; ll N; cin >> N; ll ma = sqrtl(N) / 1 + 2; auto isprime = [&](ll x) -> ll{ for(ll i = 2; i * i <= x; i++){ if(x % i == 0){ return 0; } } return 1; }; reap(i, 2, ma){ ll is = isprime(i); if(is){ ll now = i; while(true){ now *= i; if(now > N)break; ans += now; } } } cout << ans << endl; }