p, q = gets.split.map(&:to_i).map(&:abs)

type = nil
if [p,q]==[0,0]
	type = -1
else
	gcd = p.gcd(q)
	p /= gcd
	q /= gcd
	type = p*q==0 ? 0 : [p,q]==[1,1] ? 1 : p.odd?&&q.odd? ? 2 : 3
end

count = 0
gets.to_i.times{
	x, y = gets.split.map(&:to_i).map(&:abs)
	
	if type==-1
		count += 1 if [x,y]==[0,0]
	else
		next if x % gcd != 0 || y % gcd != 0
		x /= gcd; y /= gcd

		case type
		when 0
			count += 1
		when 1
			count += 1 if (x+y).even?
		when 2
			count += 1 if (x+y).even?
		when 3
			count += 1
		end
	end
}
puts count