В некоторых комнатах лабиринта n × n расставлены указатели «север», «юг», «запад» и «восток». Остальные комнаты пусты. Робот стартует с некоторого поля и следует по указателям до тех пор, пока не выйдет из лабиринта или не попадёт на поле, в котором нет указателя. Стены в лабиринте отсуствуют, то есть робот может перейти на любое соседнее по стороне поле (или выйти из лабиринта, если он пошёл с края доски в соответствующую сторону).
Требуется выяснить, что произойдёт с роботом: зациклится ли он, покинет ли доску или придёт на какое-то свободное поле доски (в этом случае требуется указать, на какое именно).
Первая строка входных данных содержит одно целое число n, задающее размер лабиринта (1 ≤ n ≤ 100).
Каждая из последующих n строк состоит из n символов, каждый символ описывает одну комнату. Если символ равен '_N_', двигаться надо на север, если символ равен '_E_' — на восток, если символ равен '_S_' — на юг, если символ равен '_W_' — на запад, если символ равен '_._', то в комнате нет указателя. Первая строка является самой северной, первый столбец — самым западным.
В последней строке содержатся два целых числа R и C (1 ≤ R, C ≤ n) — номер (начиная с единицы) строки и столбца комнаты, из которой стартует робот.
Если робот в результате движения по стрелке выходит из лабиринта, выведите 0, если он зацикливается, выведите - 1, если он останавливается в какой-то комнате внутри лабиринта, выведите два целых числа — номер (начиная с 1) строки и столбца комнаты, в которой остановится робот.
## Входные Данные
Первая строка входных данных содержит одно целое число n, задающее размер лабиринта (1 ≤ n ≤ 100).Каждая из последующих n строк состоит из n символов, каждый символ описывает одну комнату. Если символ равен '_N_', двигаться надо на север, если символ равен '_E_' — на восток, если символ равен '_S_' — на юг, если символ равен '_W_' — на запад, если символ равен '_._', то в комнате нет указателя. Первая строка является самой северной, первый столбец — самым западным.В последней строке содержатся два целых числа R и C (1 ≤ R, C ≤ n) — номер (начиная с единицы) строки и столбца комнаты, из которой стартует робот.
## Выходные Данные
Если робот в результате движения по стрелке выходит из лабиринта, выведите 0, если он зацикливается, выведите - 1, если он останавливается в какой-то комнате внутри лабиринта, выведите два целых числа — номер (начиная с 1) строки и столбца комнаты, в которой остановится робот.
## Примеры
Входные данные5NNNNNWEESEEN.SEWNWWESSSSS3 3Выходные данные3 3Входные данные5NNNNNWEESEEN.SEWNWWESSSSS2 2Выходные данные-1Входные данные5NNNNNWEESEEN.SEWNWWESSSSS3 1Выходные данные-1Входные данные5NNNNNWEESEEN.SEWNWWESSSSS1 3Выходные данные0
[samples]
**Definitions**
Let $ n \in \mathbb{Z} $ be the size of the grid ($1 \leq n \leq 100$).
Let $ G = (g_{i,j})_{1 \leq i,j \leq n} $ be the grid, where each $ g_{i,j} \in \{ \text{'N'}, \text{'E'}, \text{'S'}, \text{'W'}, \text{'.'} \} $ denotes the direction or absence of a pointer in cell $ (i,j) $.
Let $ (R, C) \in \{1, \dots, n\}^2 $ be the starting position of the robot.
**Transition Function**
Define the movement function $ \delta: \{1, \dots, n\}^2 \to \{1, \dots, n\}^2 \cup \{\text{out}, \text{stop}\} $:
- If $ g_{i,j} = \text{'N'} $, then $ \delta(i,j) = (i-1, j) $ if $ i > 1 $, else $ \text{out} $.
- If $ g_{i,j} = \text{'S'} $, then $ \delta(i,j) = (i+1, j) $ if $ i < n $, else $ \text{out} $.
- If $ g_{i,j} = \text{'W'} $, then $ \delta(i,j) = (i, j-1) $ if $ j > 1 $, else $ \text{out} $.
- If $ g_{i,j} = \text{'E'} $, then $ \delta(i,j) = (i, j+1) $ if $ j < n $, else $ \text{out} $.
- If $ g_{i,j} = \text{'.'} $, then $ \delta(i,j) = \text{stop} $.
**Objective**
Simulate the path $ (r_0, c_0) = (R, C) $, $ (r_{k+1}, c_{k+1}) = \delta(r_k, c_k) $ for $ k \geq 0 $, until one of the following occurs:
- $ \delta(r_k, c_k) = \text{out} $: output $ 0 $.
- $ \delta(r_k, c_k) = \text{stop} $: output $ r_k, c_k $.
- A state $ (r_k, c_k) $ repeats: output $ -1 $.