#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;
short a[nn][nn],ci[nn*nn],cj[nn*nn];
void lee ()
{
int st=1,dr=2;
while(st<=dr){
for(int k=0;k<8;++k){
int ii=ci[st]+di[k],jj=cj[st]+dj[k];
if(a[ii][jj]==1+a[ci[st]][cj[st]])
x=ii,y=jj,st=dr+1,k=8;
else
if(a[ii][jj]==0&&ii>=0&&ii<n&&jj<m&&jj>=0){
a[ii][jj]=a[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=0;i<n;++i){
for(int j=0;j<m;++j){
scanf("%c",&crt);
if(crt=='X')
a[i][j]=-1;
if(crt=='J')
a[i][j]=1,ci[1]=i,cj[1]=j;
if(crt=='R')
a[i][j]=1,ci[2]=i,cj[2]=j;
}
while(crt!='\n'&&i<n)
scanf("%c",&crt);
}
lee();
printf("%d %d %d\n",a[x][y],x+1,y+1);
return 0;}