#include<fstream>
#include<string.h>
using namespace std;
fstream f1,f2;
int i,j,n,m;
char a[101][102],x[102];
int main()
{
int x1,x2,y1,y2,lr1[1000],cr1[1000],lr2[1000],cr2[1000],k,nr1,nr2,q,xx1,yy1,b[101][101],ok,xx2,yy2;
int lj1[1000],cj1[1000],lj2[1000],cj2[1000],xx3,yy3,nj1,nj2,lmin,cmin,lrj[1000],crj[1000];
int dl[8]={-1,-1,0,+1,+1,+1,0,-1};
int dc[8]={0,+1,+1,+1,0,-1,-1,-1};
f1.open("rj.in",ios::in);
f2.open("rj.out",ios::out);
f1>>n>>m;
f1.get();
for(i=1;i<=n;i++)
{
f1.get(x,m+1,'\n');
f1.get();
strcpy(a[i]," ");
strcat(a[i],x);
}
x1=x2=y1=y2=xx1=xx2=yy1=yy2=xx3=yy3=0;
for(i=1;i<=n;i++)
for(j=1;j<=m;j++)
{
if(a[i][j]=='R')
{
x1=i;
y1=j;
b[i][j]=1;
}
if(a[i][j]=='J')
{
x2=i;
y2=j;
b[i][j]=0;
}
if(a[i][j]==' ')
b[i][j]=0;
if(a[i][j]=='X')
b[i][j]=-1;
}
k=1;
lr1[1]=x1;
cr1[1]=y1;
lj1[1]=x2;
cj1[1]=y2;
nr1=1;
nj1=1;
q=0;
while(!q)
{
nr2=0;
nj2=0;
for(i=1;i<=nr1;i++)
for(j=0;j<=7;j++)
{
xx1=lr1[i]+dl[j];
yy1=cr1[i]+dc[j];
if(xx1>0&&xx1<=n&&yy1>0&&yy1<=m)
if(b[xx1][yy1]==0)
{
b[xx1][yy1]=2;
nr2++;
lr2[nr2]=xx1;
cr2[nr2]=yy1;
}
}
for(i=1;i<=nj1;i++)
for(j=0;j<=7;j++)
{
xx2=lj1[i]+dl[j];
yy2=cj1[i]+dc[j];
if(xx2>0&&xx2<=n&&yy2>0&&yy2<=m)
if(b[xx2][yy2]==0)
{
b[xx2][yy2]=3;
nj2++;
lj2[nj2]=xx2;
cj2[nj2]=yy2;
}
else if (b[xx2][yy2]==2)
{
q++;
lrj[q]=xx2;
crj[q]=yy2;
b[xx2][yy2]=5;
}
}
k++;
nr1=nr2;
nj1=nj2;
for(i=1;i<=nr1;i++)
{
lr1[i]=lr2[i];
cr1[i]=cr2[i];
b[lr1[i]][cr1[i]]=1;
}
for(i=1;i<=nj1;i++)
{
lj1[i]=lj2[i];
cj1[i]=cj2[i];
b[lj1[i]][cj1[i]]=4;
}
}
ok=k;
lmin=n+1;
cmin=m+1;
for (i=1;i<=q;i++)
if ((lrj[i]<lmin) || (lrj[i]==lmin && crj[i]<cmin))
{
lmin=lrj[i]; cmin=crj[i];
}
f2<<ok<<" "<<lmin<<" "<<cmin;
f1.close();
f2.close();
return 0;
}