#include <stdio.h>
#define DIM 102
int di[8]={0,0,1,-1,1,1,-1,-1};
int dj[8]={1,-1,0,0,-1,1,-1,1};
int i,j,ir,ij,jr,jj,ic,iv,jc,jv,u,p,d,n,m;
int R[DIM][DIM], J[DIM][DIM], c[2][DIM*DIM] ;
char w;
int min,ifin,jfin;
int main(){
FILE *f = fopen("rj.in","r");
FILE *g = fopen("rj.out","w");
fscanf(f,"%d %d",&n,&m);
fscanf(f,"%c",&w);
for(i=1;i<=n;i++){
for(j=1;j<=m;j++){
fscanf(f,"%c",&w);
if(w == 'R'){
ir = i;
jr = j;
}
if(w == 'J'){
ij = i;
jj = j;
}
if(w == 'X')
R[i][j] = J[i][j] = -1;
}
fscanf(f,"%c",&w);
}
for (j=0; j<=m+1; j++)
R[0][j] = R[n+1][j] = J[0][j] = J[n+1][j] = -1;
for (i=0; i<=n+1; i++)
R[i][0] = R[i][m+1] = J[i][0] = J[i][m+1] = -1;
p=u=1;
c[0][u] = ir;
c[1][u] = jr;
R[ir][jr] = 1;
while(p<=u){
ic = c[0][p];
jc = c[1][p];
for(d=0; d<=7; d++){
iv = ic + di[d];
jv = jc + dj[d];
if(R[iv][jv] == 0){
u++;
c[0][u] = iv;
c[1][u] = jv;
R[iv][jv] = R[ic][jc] + 1;
}
}
p++;
}
p=u=1;
c[0][u] = ij;
c[1][u] = jj;
J[ij][jj] = 1;
while(p<=u){
ic = c[0][p];
jc = c[1][p];
for(d=0; d<=7; d++){
iv = ic + di[d];
jv = jc + dj[d];
if(J[iv][jv] == 0){
u++;
c[0][u] = iv;
c[1][u] = jv;
J[iv][jv] = J[ic][jc] + 1;
}
}
p++;
}
min = 1993;
for(i=1; i<=n; i++)
for(j=1; j<=m; j++){
if((R[i][j] == J[i][j]) && (R[i][j] > 0) && (R[i][j] < min)){
ifin = i;
jfin = j;
min = R[i][j];
}
}
fprintf(g,"%d %d %d",min, ifin, jfin);
/* for(i=1;i<=n; i++){
for(j=1;j<=m;j++)
printf("%d ", R[i][j]);
printf("\n");
}*/
fclose(f);fclose(g);
return 0;
}