#include <stdio.h>
#define infile "rj.in"
#define outfile "rj.out"
#define nmax 101
int v[2][nmax][nmax], i, j, n, m, cx[nmax*55], cy[nmax*55], p=1, u, tmin=32000, xx, yy, dx[8]={-1,-1,0,1,1,1,0,-1}, dy[8]={0,1,1,1,0,-1,-1,-1}, coord[2][2];
void readdata();
void writedata();
void solve();
int inside(int,int);
int main()
{
readdata();
solve();
writedata();
return 0;
}
void readdata()
{
char c;
freopen(infile, "r", stdin);
scanf("%d %d\n", &n, &m);
for (i=1; i<=n; i++)
for (j=1; j<=m+1; j++)
{
scanf("%c", &c);
if (c=='X') v[0][i][j]=v[1][i][j]=-1;
if (c==' ') v[0][i][j]=v[1][i][j]=0;
if (c=='R') { coord[0][0]=i; coord[0][1]=j; v[0][i][j]=v[1][i][j]=1; }
if (c=='J') { coord[1][0]=i; coord[1][1]=j; v[0][i][j]=v[1][i][j]=1; }
}
fclose(stdin);
}
void writedata()
{
freopen(outfile, "w", stdout);
printf("%d %d %d\n", tmin, xx, yy);
fclose(stdin);
}
int inside(int x, int y)
{
if (x<1 || x>n) return 0;
if (y<1 || y>m) return 0;
return 1;
}
void solve()
{
int x,y;
for (int ii=0; ii<=1; ii++)
{
p=u=1;
cx[u]=coord[ii][0];
cy[u]=coord[ii][1];
while (p<=u)
{
x=cx[p];
y=cy[p++];
for (int l=0; l<8; l++)
{
if ( inside(x+dx[l], y+dy[l]))
if (!v[ii][x+dx[l]][y+dy[l]])
{
cx[++u]=x+dx[l];
cy[u]=y+dy[l];
v[ii][x+dx[l]][y+dy[l]]=v[ii][x][y]+1;
}
}
}
}
for (i=1; i<=n; i++)
for (j=1; j<=m; j++)
if (v[0][i][j]==v[1][i][j] && v[0][i][j]>1)
{
tmin=v[1][i][j];
xx=i;
yy=j;
}
}