l,r = map(int,input().split()) if l == 1: print(0) exit() graph = [[] for i in range(r+1)] vis = [0 for i in range(r+1)] for i in range(l,r+1): if vis[i] == 0: vis[i] = 1 for j in range(2*i,r+1,i): vis[j] = 1 graph[i].append(j) graph[j].append(i) stack = [] ans = 0 for i in range(l,r+1): if vis[i] == 1: ans += 1 stack.append(i) vis[i] += 1 while stack: x = stack.pop() for y in graph[x]: if vis[y] == 1: stack.append(y) vis[y] = 2 print(ans-1)