#include using namespace std; long long int dp_solve(long long k, map< long long, long long > &dp) { if(k==1) return 1; if(dp[k]!=0) return dp[k]; long long i=2; long long maxim=k+1; long long p=0; for(i=2;i<=sqrt(k)+1;i++) { if(k%i==0) { maxim=max(maxim,1+(i)*dp_solve(k/i,dp)); if((k/i)>1) maxim=max(maxim,1+(k/i)*dp_solve(i,dp)); } } dp[k]=maxim; return maxim; } int main() { long long int i,j,k,n,t; cin>>n; map dp; t=0; for(i=0;i>k; t+=dp_solve(k,dp); } cout<