#include<bits/stdc++.h>
typedef long long ll;
using namespace std;
ll l,r,phi[1000010],vis[1000010],phi_ans[1000010],ans,mod=666623333;
bitset<1000010> not_prime;
vector<int> prime;
int main() {
cin>>l>>r;
for(int i=2;i<=1000000;i++) {
if(!not_prime[i]) {
prime.push_back(i);
phi[i]=i-1;
}
for(int prime_j:prime) {
if(i*prime_j>1000000) {
break;
}
not_prime[i*prime_j]=true;
if(i%prime_j==0) {
phi[i*prime_j]=phi[i]*phi[prime_j];
break;
}
}
}
for(int i=l;i<=r;i++) {
phi_ans[i-l]=1;
vis[i-l]=i;
}
for(int prime_j:prime) {
for(int i=(l+2)/prime_j;i*prime_j<=r;i++) {
phi_ans[i*prime_j-l]*=phi[prime_j];
vis[i*prime_j-l]/=prime_j;
}
}
for(int i=0;i<r-l;i++) {
if(vis[i]!=1) {
phi_ans[i]*=vis[i]-1;
}
}
for(int i=l;i<=r;i++) {
ans+=i;
ans-=phi_ans[i-l];
}
cout<<ans;
return 0;
}