#include <stdio.h>
FILE *f=fopen("rj.in","r");
FILE *g=fopen("rj.out","w");
int n,m,l,cc,a[101][101],b[101][101],i,j,x,y,y1,y2,dx[4]={-1,0,1,0},dy[4]={0,1,0,-1},x1,x2,c[2][10001];
char c1;
void coadar(int x,int y) {
int p,u,i;
p=u=1;
c[0][1]=x;
c[1][1]=y;
a[x][y]=1;
while(p<=u) {
for(i=0;i<=3;i++) {
l=c[0][p]+dx[i];
cc=c[1][p]+dy[i];
if(a[l][cc]==0) {
u++;
c[0][u]=l;
c[1][u]=cc;
a[l][cc]=a[c[0][p]][c[1][p]]+1;
}
}
p++;
}
}
void coadaj(int x,int y) {
int p,u,i;
p=u=1;
c[0][1]=x;
c[1][1]=y;
b[x][y]=1;
while(p<=u) {
for(i=0;i<=3;i++) {
l=c[0][p]+dx[i];
cc=c[1][p]+dy[i];
if(b[l][cc]==0) {
u++;
c[0][u]=l;
c[1][u]=cc;
b[l][cc]=b[c[0][p]][c[1][p]]+1;
}
}
p++;
}
}
int main() {
fscanf(f,"%d%d",&n,&m);
for(i=1;i<=n;i++)
for(j=1;j<=m;j++) {
fscanf(f,"%c",&c1);
if(c1=='X')
a[i][j]=b[i][j]=1;
else
if(c1=='R') {
a[i][j]=1;
x1=i;
y1=j;
}
else
if(c1=='J') {
b[i][j]=1;
x2=i;
y2=j;
}
}
for(i=0;i<=n+1;i++)
a[i][0]=b[i][0]=a[i][n+1]=b[i][n+1]=a[0][i]=b[0][i]=a[n+1][i]=b[n+1][i]=1;
coadar(x1,y1);
coadaj(x2,y2);
for(i=1;i<=n;i++)
for(j=1;j<=m;j++)
if(a[i][j]==b[i][j])
fprintf(g,"%d %d %d",a[i][j],i,j);
return 0;
}