#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
const int maxn=1e5;
typedef long long ll;
int gcd(int a,int b){
return !b?a:gcd(b,a%b);
}
ll n,ans=0,a[maxn];
int main(){
scanf("%lld",&n);
for(int i=n;i>=1;i--){
//cout<<ans<<endl;
a[i]=(n/i)*(n/i);
for(int j=2;;j++){
if(j*i>n) break;
else a[i]-=a[j*i];
}
ans+=a[i]*i;
}
cout<<ans<<endl;
return 0;
}
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
const int maxn=1e5;
typedef long long ll;
int gcd(int a,int b){
return !b?a:gcd(b,a%b);
}
ll n,ans=0,a[maxn];
int main(){
scanf("%lld",&n);
for(int i=n;i>=1;i--){
//cout<<ans<<endl;
a[i]=(n/i)*(n/i);
for(int j=2;;j++){
if(j*i>n) break;
else a[i]-=a[j*i];
}
ans+=a[i]*i;
}
cout<<ans<<endl;
return 0;
}