A number is called almost prime if it has exactly two distinct prime divisors. For example, numbers 6, 18, 24 are almost prime, while 4, 8, 9, 42 are not. Find the amount of almost prime numbers which are between 1 and n, inclusive.

Input

Input contains one integer number n (1 ≤ n ≤ 3000).

Output

Output the amount of almost prime numbers between 1 and n, inclusive.

Examples

Input

10


Output

2


Input

21


Output

8
import math

def q26a():
	num = int(input())
	almost_prime_amount = 0
	for i in range(1, num+1):
		if(q26a_isalmostprime(i) == True):
			almost_prime_amount += 1
	print(almost_prime_amount)

def q26a_isalmostprime(num):
	primes_to_check = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53]
	num_primes_set = set()
	for prime in primes_to_check:
		if(num % prime == 0):
			num_primes_set.add(prime)
			while(num % prime == 0):
				num = num // prime
			if(q26a_isprime(num) == True):
				num_primes_set.add(num)
	if(len(num_primes_set) == 2):
		return True
	else:
		return False

def q26a_isprime(num):
	if(num < 2):
		return False
	for i in range(2, math.ceil(math.sqrt(num))+1):
		if(num % i == 0):
			return False
	return True

q26a()