#include<cstdio>
using namespace std;
#define nn 105
char di[]={-1,-1,0,1,1, 1, 0,-1},
dj[]={ 0, 1,1,1,0,-1,-1,-1};
int n,m,x,y,tmin;
int a[nn][nn],b[nn][nn];
char ci[nn*nn],cj[nn*nn];
void lee (int aa[nn][nn])
{
int st=1,dr=1;
while(st<=dr){
for(int k=0;k<8;++k){
int ii=ci[st]+di[k],jj=cj[st]+dj[k];
if(aa[ii][jj]==0&&ii>0&&ii<=n&&jj<=m&&jj>0){
aa[ii][jj]=aa[ci[st]][cj[st]]+1;
++dr;
ci[dr]=ii;
cj[dr]=jj;
}
}
++st;
}
}
int main ()
{
freopen ("rj.in","r",stdin);
freopen ("rj.out","w",stdout);
scanf("%d %d",&n,&m);
char crt;
scanf("%c",&crt);
while(crt!='\n')
scanf("%c",&crt);
for(int i=1;i<=n;++i){
for(int j=1;j<=m;++j){
scanf("%c",&crt);
if(crt=='X')
a[i][j]=-1,b[i][j]=-1;
if(crt=='J')
a[i][j]=1,ci[1]=i,cj[1]=j;
if(crt=='R')
b[i][j]=1,x=i,y=j;
}
while(crt!='\n'&&i<n)
scanf("%c",&crt);
}
lee (a);
ci[1]=x,cj[1]=y;
lee (b);
int min=1<<30;
for(int i=1;i<=n;++i)
for(int j=1;j<=m;++j)
if(a[i][j]==b[i][j]&&a[i][j]<min&&a[i][j]>0){
min=a[i][j];
x=i;
y=j;
}
printf("%d %d %d\n",min,x,y);
return 0;}