n = gets.to_i ab = n.times.map {gets.split.map(&:to_i)} m = gets.to_i r = m.times.map {|i| x, y = gets.split.map(&:to_i) c = ab.select{|a,b|x<=a&&y>=b}.size [i,c] } mx = r.map{|a|a[1]}.max if mx.zero? p 0 else puts r.select{|a|a[1]==mx}.map{|a|a[0]+1} end