#include <stdio.h>
#include <string.h>
#define DIM 101
int di[] = {0,0,-1,1,-1,1,-1,1};
int dj[] = {1,-1,0,0,1,-1,-1,1};
char a[DIM][DIM],x;
int c[2][DIM*DIM];
//int cj[2][DIM*DIM];
int R[DIM][DIM];
int J[DIM][DIM];
int n,m;
int i,j,d,ii,ok;
int ic,jc,iv,jv,iMin,jMin,min,ir,jr,ij,jj;
//int icj,jcj,ivj,jvj;
int p,u;
int main(){
FILE*f1=fopen("rj.in","r");
fscanf(f1,"%d%d\n",&n,&m);
for(i=1; i<=n; i++){
for(j=1; j<=m; j++){
fscanf(f1,"%c",&a[i][j]);
if(a[i][j]=='R'){
ir = i;
jr = j;
}
if(a[i][j]=='J'){
ij = i;
jj = j;
}
}
fscanf(f1,"%c",&x);
}
fclose(f1);
p = u = 1;
c[0][1] = ir;
c[1][1] = 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(iv>=1 && iv<=n && jv>=1 && jv<=m && R[iv][jv]==0 && a[iv][jv] != 'X'){
u++;
c[0][u] = iv;
c[1][u] = jv;
R[iv][jv] = R[ic][jc] + 1;
}
}
p++;
}
p = u = 1;
c[0][1] = ij;
c[1][1] = 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(iv>=1 && iv<=n && jv>=1 && jv<=m && J[iv][jv]==0 && a[iv][jv] != 'X'){
u++;
c[0][u] = iv;
c[1][u] = jv;
J[iv][jv] = J[ic][jc] + 1;
}
}
p++;
}
min = 10002;
for (i=1;i<=n;i++)
for (j=1;j<=m;j++)
if (R[i][j]!=0 && R[i][j] == J[i][j] && R[i][j] <min) {
min = R[i][j];
iMin = i;
jMin = j;
}
FILE*f2=fopen("rj.out","w");
fprintf(f2,"%d %d %d",min,iMin,jMin);
fclose(f2);
return 0;
}