#include<stdio.h>
char a[100][100];
int n,m,r[100][100],j[100][100];
int main ()
{
//clrscr();
int sf,inc,x,y,min=10000,k,xr,yr,xj,yj,i,cx[100],cy[100],dx[]={-1,-1,-1,0,0,1,1,1},dy[]={-1,0,1,-1,1,-1,0,1};
FILE *f;
f=fopen("4-rj.in","r");
fscanf(f,"%d%d",&n,&m);
//fgetc(f);
for (i=1;i<=n;++i)
{
fscanf(f,"%*c");
for (k=1;k<=m;++k)
{
fscanf(f,"%c",&a[i][k]);
if (a[i][k]=='R')
{
xr=i;
yr=k;
}
if (a[i][k]=='J')
{
xj=i;
yj=k;
}
// fgetc(f);
}
}
fclose(f);
/*
for (i=1;i<=n;++i)
{
for (k=1;k<=m;k++)
printf("%c",a[i][k]);
printf("\n");
}
*/
for (i=1;i<=n;++i)
{
a[i][0]='X';
a[i][m+1]='X';
}
for (i=0;i<=m+1;++i)
{
a[0][i]='X';
a[n+1][i]='X';
}
sf=0;
inc=0;
cx[0]=xr;
cy[0]=yr;
r[xr][yr]=1;
while (inc<=sf)
{
// for (i=inc;i<=sf;++i)
for (k=0;k<=7;++k)
{
if (a[cx[inc]+dx[k]][cy[inc]+dy[k]]!='X'&&r[cx[inc]+dx[k]][cy[inc]+dy[k]]==0)
{
cx[++sf]=cx[inc]+dx[k];
cy[sf]=cy[inc]+dy[k];
r[cx[sf]][cy[sf]]=r[cx[inc]][cy[inc]]+1;
// printf("%d",r[cx[sf]][cy[sf]]);
}
}
inc++;
}
sf=0;
inc=0;
cx[0]=xj;
cy[0]=yj;
j[xj][yj]=1;
while (inc<=sf)
{
// for (i=inc;i<=sf;++i)
for (k=0;k<=7;++k)
{
if (a[cx[inc]+dx[k]][cy[inc]+dy[k]]!='X'&&j[cx[inc]+dx[k]][cy[inc]+dy[k]]==0)
{
cx[++sf]=cx[inc]+dx[k];
cy[sf]=cy[inc]+dy[k];
j[cx[sf]][cy[sf]]=j[cx[inc]][cy[inc]]+1;
}
}
inc++;
}
for (i=1;i<=n;++i)
for (k=1;k<=m;++k)
if (r[i][k]==j[i][k]&&r[i][k]<min&&r[i][k]!=0)
{
min=r[i][k];
x=i;
y=k;
}
/*
for (i=1;i<=n;i++)
{
for (k=1;k<=m;k++)
printf("%d",r[i][k]);
printf("\n");
}
printf("\n");
for (i=1;i<=n;i++)
{
for (k=1;k<=m;k++)
printf("%d",r[i][k]);
printf("\n");
}
*/
f=fopen("rj.out","w");
fprintf(f,"%d %d %d",x,y,min);
fclose(f);
return 0;
}