/*
AizuOnline A2000
Title Misterious Gems
*/
#include <stdio.h>
// Select Below
//#include <stdlib.h>
//#include <string.h>
//#include <float.h>
//#include <math.h>
//#include <limits.h>
//Global data section
struct g_st
{ int x;
  int y;
  int flag;
} gem[20];

  int m,n;
int xpos,ypos;
//
main()
{
  int i,j,k,kosuu,d;
  char dir;
  int *ptr,delta;

  while(EOF!=scanf("%d ",&n) && n)
    {
      //printf("N=%d",n);
      for(i=0;i<n;i++)
	{
	  scanf("%d %d ",&(gem[i].x),&(gem[i].y));
	  //printf("xy=%d %d",gem[i].x,gem[i].y);
	  gem[i].flag=0;
	}
      xpos=10;ypos=10;kosuu=0;
      scanf("%d ",&m);
      //printf("M=%d",m);
      for(i=0;i<m;i++)
	{
	  scanf("%c %d ",&dir,&d);
	  switch(dir)
	    {
	    case 'N':
	      ptr = &ypos;
	      delta=1;
	      break;
	    case 'S':
	      ptr = &ypos;
	      delta=-1;
	      break;
	    case 'W':
	      ptr = &xpos;
	      delta=-1;
	      break;
	    case 'E':
	      ptr = &xpos;
	      delta=1;
	      break;
	    }
	  for(k=0;k<d;k++)
	    {
	      *ptr += delta;
	      //printf("XY=%d %d",xpos,ypos);
	      for(j=0;j<n;j++)
		if(gem[j].x==xpos && gem[j].y ==ypos && gem[j].flag==0)
		  {
		    //printf("*");
		    kosuu++;
		    gem[j].flag=1;
		  }
	    }
	}
      //printf("km %d %d",kosuu,n);
      if(kosuu==n)
	printf("Yes\n");
      else
	printf("No\n");
    }
return(0);
}