#include using namespace std; #include using namespace atcoder; using ll=long long; using Graph=vector>; #define MAX 2000000 #define MOD 1000000007 #define INF 1000000000 int main(){ ll L,R; cin>>L>>R; vector cnt(R-L+1,1); vector A(R-L+1); for(ll i=L;i<=R;i++){ A[i-L]=i; } for(ll i=2;i<=10000000;i++){ ll x=i*i; for(ll j=((L-1)/x+1)*x;j<=R;j+=x){ cnt[j-L]=0; } for(ll j=((L-1)/i+1)*i;j<=R;j+=i){ while(A[j-L]%i==0){ A[j-L]/=i; } } } for(ll i=L;i<=R;i++){ ll left=0; ll right=1000000001; while(left+11){ cnt[i-L]=0; } } int ans=0; for(ll i=L;i<=R;i++){ ans+=cnt[i-L]; } cout<