#include<stdio.h>
#define DIM 102
int t,min,x,y,a[DIM][DIM],Ro[DIM][DIM],Ju[DIM][DIM],n,i,j,p,u,m,ic,jc,iv,jv,iR,jR,iJ,jJ,k;
int di[8]={-1,1,0,0,-1,1,-1,1};
int dj[8]={0,0,-1,1,-1,-1,1,1};
int C[2][DIM*DIM];
char s[DIM];
int main(){
FILE*f=fopen("rj.in","r");
FILE*g=fopen("rj.out","w");
min=10002;
fscanf(f,"%d%d\n",&n,&m);
for (i=1;i<=n;i++) {
for (j=1;j<=m;j++) {
// a[i][j] = s[j-1];
a[i][j] = fgetc(f);
if(a[i][j]=='R'){
iR=i;
jR=j;
}
if(a[i][j]=='J'){
iJ=i;
jJ=j;
}
if(a[i][j]==' ')
a[i][j]=0;
if(a[i][j]=='X')
a[i][j]=Ro[i][j]=Ju[i][j]=-1;
}
fgetc(f);
}
for (i=0;i<=n+1;i++) {
Ro[i][m+1]= Ro[i][0]=Ju[i][m+1]= Ju[i][0]=-1;
}
for(j=0;j<=m+1;j++)
Ro[0][j]= Ro[n+1][j]=Ju[0][j]= Ju[n+1][j]=-1;
p=1;
u=1;
C[0][u]=iR;
C[1][u]=jR;
Ro[iR][jR]=1;
for(;p<=u;p++){
ic = C[0][p];
jc = C[1][p];
for(k=0;k<=7;k++){
iv=ic+di[k];
jv=jc+dj[k];
if(Ro[iv][jv]==0){
u++;
C[0][u]=iv;
C[1][u]=jv;
Ro[iv][jv]=Ro[ic][jc]+1;
}
}
}
p=1;
u=1;
C[0][u]=iJ;
C[1][u]=jJ;
Ju[iJ][jJ]=1;
for(;p<=u;p++){
ic = C[0][p];
jc = C[1][p];
for(k=0;k<=7;k++){
iv=ic+di[k];
jv=jc+dj[k];
if(Ju[iv][jv]==0){
u++;
C[0][u]=iv;
C[1][u]=jv;
Ju[iv][jv]=Ju[ic][jc]+1;
}
}
}
for (i=1;i<=n;i++)
for(j=1;j<=m;j++)
if(Ro[i][j]==Ju[i][j]&&Ro[i][j]!=-1&&Ro[i][j]!=0&&Ro[i][j]<min){
x=i;
y=j;
min=Ro[i][j];
}
fprintf(g,"%d %d %d",min,x,y);
/* for(i=1;i<=n;i++){
for(j=1;j<=m;j++)
fprintf(g,"%d ",Ju[i][j]);
fprintf(g,"\n");
} */
fclose(f);
fclose(g);
return 0;
}