while true do
  n = gets.to_i
  break if n == 0

  field = Array.new(21, 0).map{ Array.new(21, 0) }
  gems = []
  n.times do
    gems << gets.split.map(&:to_i)
  end

  bot = [10, 10]
  field[bot[0]][bot[1]] = 1
  gets.to_i.times do
    dir, dis = gets.split
    dis = dis.to_i

    if dir == "N"
      (1..dis).each{ |i| field[bot[0]][bot[1]+i] = 1 }
      bot = [bot[0], bot[1]+dis]
    elsif dir == "E"
      (1..dis).each{ |i| field[bot[0]+i][bot[1]] = 1 }
      bot = [bot[0]+dis, bot[1]]
    elsif dir == "S"
      (1..dis).each{ |i| field[bot[0]][bot[1]-i] = 1 }
      bot = [bot[0], bot[1]-dis]
    elsif dir == "W"
      (1..dis).each{ |i| field[bot[0]-i][bot[1]] = 1 }
      bot = [bot[0]-dis, bot[1]]
    end
  end

  count = 0
  gems.each do |gem|
    x, y = gem
    if field[x][y] == 1
      count += 1
    else
      break
    end
  end

  puts count == n ? "Yes" : "No"
end