import mathtools,math

lim = 15*10**5
triples = []
for s in range(3,math.floor(math.sqrt(lim)),2):
	for t in range(s-2,0,-2):
		if math.gcd(s,t)==1:
			a = s*t
			b = (s*s-t*t)//2
			c = (s*s+t*t)//2
			triples.append([a,b,c])

vals = [0]*(lim+1)

for triple in triples:
	summ = sum(triple)
	for i in range(summ,len(vals),summ):
		vals[i] += 1
		
ans = 0
for i in vals:
	if i==1:
		ans += 1
		
print(ans)
		
		
		




















































# def popitem(r,val):
	# id = -1
	# for i in range(len(r)):
		# if val == r[i]:
			# id =  i
			# break
	# r.pop(id)
	# return r

# fib = []
# fib.append(1)
# fib.append(1)
# for i in range(2,100):
	# if len(str(fib[-1])) < 8:
		# fib.append(fib[i-1]+fib[i-2])
# right_triangles = {5:[5,4,3,12]}
# for i in range(6,len(fib),2):
	# right_triangles[fib[i]] = [fib[i],fib[i-2]+right_triangles[fib[i-2]][2]+right_triangles[fib[i-2]][1],fib[i-1]-right_triangles[fib[i-2]][2]]
	# right_triangles[fib[i]].append(right_triangles[fib[i]][0]+right_triangles[fib[i]][1]+right_triangles[fib[i]][2])

# pprint.pprint(right_triangles)

# print(mathtools.divisorlist(610))




# r = [1,2,3,4,5,3]

# r = popitem(r,2)
# print(r)