#include <stdio.h>
int n, m, r[101][101], j1[101][101], xr, yr, xj, yj, x1, y1, t;
char s[101][101];
void lee(int mat[101][101], int xr, int yr)
{
int xx, yy, x[10001], y[10001], pr, ul, i, j;
const int dx[]={-1, -1, 0, 1, 1, 1, 0, -1}, dy[]={0, 1, 1, 1, 0, -1, -1, -1};
for (i=0; i<n; i++)
for (j=0; j<m; j++)
mat[i][j]=0;
pr=ul=0;
x[0]=xr;
y[0]=yr;
mat[xr][yr]=1;
while (pr<=ul)
{
for (i=0; i<8; i++)
{
xx=x[pr]+dx[i];
yy=y[pr]+dy[i];
if (xx>=0 && xx<n && yy>=0 && yy<m && s[xx][yy]!='X' && mat[xx][yy]==0)
{
mat[xx][yy]=mat[x[pr]][y[pr]]+1;
ul++;
x[ul]=xx;
y[ul]=yy;
}
}
pr++;
}
t=(mat[x[pr]][y[pr]]+1)/2;
}
int main()
{
freopen("rj.in", "rt", stdin);
freopen("rj.out", "wt", stdout);
int i, j;
scanf("%d %d\n", &n, &m);
for (i=0; i<n; i++)
{
gets(s[i]);
for (j=0; j<m; j++) if (s[i][j]=='R')
{
xr=i;
yr=j;
}
else if (s[i][j]=='J')
{
xj=i;
yj=j;
}
}
lee(r, xr, yr);
lee(j1, xj, yj);
t=n*m+5;
for (i=0; i<n; i++)
for (j=0; j<m; j++)
if (r[i][j]==j1[i][j] && r[i][j]!=0 && r[i][j]<t)
{
t=r[i][j];
x1=i;
y1=j;
}
printf("%d %d %d", t, x1+1, y1+1);
return 0;
}