#include <iostream>
#include <string>
#include <cstring>
#include <cmath>
#include <algorithm>
using namespace std;
#define N 15
int n, m, s;
char g[N][N];
int d[N][N];
void go(int x, int y, int step)
{
if(x < 0 || x >= n || y < 0 || y >= m)
{
printf("%d step(s) to exit\n", step);
return;
}
if(d[x][y] != -1)
{
printf("%d step(s) before a loop of %d step(s)\n", d[x][y], step - d[x][y]);
return;
}
// d[x][y] == -1 没有走过的有效点
d[x][y] = step;
if(g[x][y] == 'N')
go(x - 1, y, step + 1);
else if(g[x][y] == 'S')
go(x + 1, y, step + 1);
else if(g[x][y] == 'E')
go(x, y + 1, step + 1);
else
go(x, y - 1, step + 1);
}
int main()
{
while(scanf("%d%d%d", &n, &m, &s) && (n || m || s))
{
memset(d, -1, sizeof d);
for (int i = 0; i < n; i ++)
for(int j = 0; j < m; j ++)
cin >> g[i][j];
s --; // 下标从0开始,而题目的s从1开始
go(0, s, 0);
}
return 0;
}