n=gets.not_nil!.to_i
t=[true]*(3*n+1)
t[0]=t[1]=false
(2...t.size).each{|i|
	if t[i]
		(i*2).step(to: t.size-1,by: i){|j|t[j]=false}
	end
}
q=(2...t.size).select{|i|t[i]}
o=q.dup
r=0
a=[0]*t.size
q.each{|c|
	break if c>n
	o.each{|s|r+=a[s-c]}
	o.shift
	q.each{|x|break if x>=c;a[x+c]+=1}
}
p r