#include <stdio.h>#include <string.h>void turn(char *dir, char command);void move(char dir, int * r, int * l);char map[65][65];int n, m;int main(){int i, j;int posr, posl;char dir;char command, str[65];while(scanf("%d%d", &n, &m) != EOF) {getchar();for(i = 0; i < n; i++) {gets(str);for(j = 0; j < m; j++) {map[i][j] = str[j];}}scanf("%d%d", &posr, &posl);posr -= 1;posl -= 1;dir = 'N';while((command = getchar()) != 'Q') {if(command == 'R' || command == 'L') {turn(&dir, command);}else if(command == 'F') {move(dir, &posr, &posl);}}printf("%d %d %cn", posr+1, posl+1, dir);}return 0;}void turn(char *dir, char command){if(command == 'R') {if(*dir == 'N') {*dir = 'E';}else if(*dir == 'S') {*dir = 'W';}else if(*dir == 'W') {*dir = 'N';} else {*dir = 'S';}} else {if(*dir == 'N') {*dir = 'W';}else if(*dir == 'S') {*dir = 'E';}else if(*dir == 'W') {*dir = 'S';} else {*dir = 'N';}}}void move(char dir, int *r, int *l){int tr, tl;tr = *r;tl = *l;if(dir == 'N') {tr -= 1;}else if(dir == 'S') {tr += 1;}else if(dir == 'W') {tl -= 1;} else {tl += 1;}if(tr >= 0 && tr < n && tl >= 0 && tl < m) {if(map[tr][tl] == ' ') {*r = tr;*l = tl;}}}


