On the math lesson a teacher asked each pupil to come up with his own lucky numbers. As a fan of number theory Peter chose prime numbers. Bob was more original. He said that number *t* is his lucky number, if it can be represented as: 

Now, the boys decided to find out how many days of the interval [*l*, *r*] (*l* ≤ *r*) are suitable for pair programming. They decided that the day *i* (*l* ≤ *i* ≤ *r*) is suitable for pair programming if and only if the number *i* is lucky for Peter and lucky for Bob at the same time. Help the boys to find the number of such days.
The first line of the input contains integer numbers *l*, *r* (1 ≤ *l*, *r* ≤ 3·10<sup class="upper-index">8</sup>).
l, r = [int(x) for x in input().split()]

L = (r >> 6) + 2
composite = [0 for i in range(L)]

i = 3
while i * i <= r:
    if ((composite[i >> 6] >> (i % 64)) & 1) == 0:
        for j in range(i * i, r + 1, i):
            composite[j >> 6] |= 1 << (j % 64)
    i += 2
ans = 0
if l <= 2 <= r: ans += 1
i = 5
while i <= r:
    if i >= l and (composite[i >> 6] & (1 << (i % 64))) == 0: ans += 1
    i += 4

print(ans)
