#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; typedef long long ll; #define MP make_pair #define PB push_back #define inf 1000000007 #define mod 1000000007 #define rep(i,n) for(int i = 0; i < (int)(n); ++i) vector dev; vector id; void prime_factor(long long N){ for(int i=2;(long long)i*i<=N;i++){ int cnt = 0; while(N%i == 0){ cnt++; N /= i; } if(cnt){ dev.push_back(i); id.push_back(cnt); } } if(N != 1){ dev.push_back(N); id.push_back(1); } return; } #define MOD 1000000007 long long pow(long long a,long long b) { long long res = 1; while(b){ if(b & 1){ res = res * a; } a = a * a; b >>= 1; } return res; } int main(){ ll n; cin >> n; prime_factor(n); ll res = 1; rep(i,id.size()){ ll r =0; rep(j,id[i]+1){ r += pow(dev[i],j); } res *= r; } cout << res << endl; return 0; }