#include <bits/stdc++.h>
using namespace std;

#define REP(i,n) for(int i=0;i<(int)(n);i++)
#define FOR(i,a,b) for(int i=(int)(a);i<(int)(b);i++)
#define FORR(i,a,b) for(int i=(int)(b)-1;i>=(int)(a);i--)

// right, down, left, up
int dx[] = {1,0,-1,0};
int dy[] = {0,1,0,-1};

#define y0 icpc_y0
int n;
int x0, y0;
int t;
#define N 52
bool g[N][N][4];
bool st[2][N][N][16]; // 16 mean (nowdir, befdir)

int main(){
  scanf("%d%d%d%d",&n,&x0,&y0,&t);
  while(n--){
    int sx, sy, tx, ty;
    scanf("%d%d%d%d",&sx,&sy,&tx,&ty);
    if(sx == tx){
      if(sy>ty)swap(sy,ty);
      FOR(i,sy,ty){
        g[sx][i][1] = true;
        g[sx][i+1][3] = true;
      }
    }else{
      if(sx>tx)swap(sx,tx);
      FOR(i,sx,tx){
        g[i][sy][0] = true;
        g[i+1][sy][2] = true;
      }
    }
  }
  // REP(i,N){
  //   REP(j,N){
  //     REP(k,4)printf("%d",g[i][j][k]);
  //     printf(" ");
  //   }
  //   puts("");
  // }
  REP(i,N)REP(j,N)REP(k,16)st[0][i][j][k] = false;
  REP(k,16)if(((k>>2)^(k&3))!=2 && g[x0][y0][k>>2]){
    st[0][x0][y0][k] = true;
  }
  while(t--){
    int d;
    char buf[25];
    scanf("%d%s",&d,buf);
    int tdir = 0;
    if(buf[0]=='E')tdir = 0;
    if(buf[0]=='N')tdir = 1;
    if(buf[0]=='W')tdir = 2;
    if(buf[0]=='S')tdir = 3;
    while(d--){
      // step
      REP(i,N)REP(j,N)REP(k,16)st[1][i][j][k] = false;
      REP(i,N)REP(j,N)REP(k,16)if(st[0][i][j][k]){
        int bdir = k>>2;
        int ni = i + dx[bdir];
        int nj = j + dy[bdir];
        // printf("from %d,%d,%d(%d)\n", i,j,k,bdir);
        REP(ndir,4){
          if((bdir ^ ndir) == 2)continue;
          if(!g[ni][nj][ndir])continue;
          st[1][ni][nj][(ndir<<2) | bdir] = true;
          // printf("    -> %d,%d,%d(%d)\n", ni,nj,(ndir<<2)|bdir,ndir);
        }
      }
      REP(i,N)REP(j,N)REP(k,16){
        st[0][i][j][k] = st[1][i][j][k];
      }
    }
    REP(i,N)REP(j,N)REP(k,16){
      if((k>>2)!=tdir && (k&3)!=tdir){
        st[0][i][j][k] = false;
      }
    }
  }
  REP(i,N)REP(j,N){
    bool ok = false;
    REP(k,16)if(st[0][i][j][k])ok=true;
    if(ok){
      printf("%d %d\n",i,j);
    }
  }
  return 0;
}