while n = gets.to_i
  break if n == 0
  gems = 21.times.map{ [0]*21 }
  n.times { x, y = gets.split(' ').map(&:to_i); gems[x][y] = 1 }
  x = 10; y = 10
  gets.to_i.times do |i|
    d, m = gets.split(' '); m = m.to_i
    case d
    when 'N' then (1..m).each{ |i| gems[x][y+i] = 0 }; y += m;
    when 'E' then (1..m).each{ |i| gems[x+i][y] = 0 }; x += m;
    when 'S' then (1..m).each{ |i| gems[x][y-i] = 0 }; y -= m;
    when 'W' then (1..m).each{ |i| gems[x-i][y] = 0 }; x -= m; end
  end
  if gems.flatten.all?{|v| v == 0} then puts "Yes"
  else puts "No"
  end
end