#include <fstream>
#include <iostream>
using namespace std;
char a [101][101];
int n,m,x[10201],y[10201],ar[101][101],aj[101][101];
const int dx[]={-1,-1,0,1,1,1,0,-1};
const int dy[]={0,1,1,1,0,-1,-1,-1};
ofstream out("rj.out");
void citire()
{int i;
ifstream in("rj.in");
in>>n>>m;
in.get();
for(i=0;i<n;i++)
{
in.getline(a[i],101,'\n');
//cout<<a[i]<<endl;
}
in.close();
}
int bune(int i,int j)
{
return (i>=0 and i<n and j>=0 and j<m);
}
void Lee(int arj[][101],int i,int j)
{int k,pi=0,ps=0,ii,jj;
x[0]=i;
y[0]=j;
arj[i][j]=1;
while(pi<=ps)
{ i=x[pi];
j=y[pi];
for(k=0;k<8;k++)
{
ii=i+dx[k];
jj=j+dy[k];
if(bune(ii,jj)==1)
if(a[ii][jj]==' ')
if(arj[ii][jj]==0 or arj[ii][jj]>arj[i][j]+1)
{
arj[ii][jj]=arj[i][j]+1;
ps++;
x[ps]=ii;
y[ps]=jj;
}
}
pi++;
}
}
int main()
{int i,j,xr,yr,xi,yi,xj,yj,min;
citire();
for(i=0;i<n;i++)
for(j=0;j<m;j++)
{
if(a[i][j]=='R')
{xr=i;
yr=j;}
if(a[i][j]=='J')
{xj=i;
yj=j;}
}
Lee(ar,xr,yr);
for(i=0;i<n;i++)
{for(j=0;j<m;j++)
cout<<ar[i][j]<<" ";
cout<<endl;
}
for(i=0;i<n;i++)
{for(j=0;j<m;j++)
cout<<aj[i][j]<<" ";
cout<<endl;
}
Lee(aj,xj,yj);
for(i=0;i<n;i++)
{for(j=0;j<m;j++)
cout<<aj[i][j]<<" ";
cout<<endl;
}
min=m*n+1;
for(i=0;i<n;i++)
for(j=0;j<m;j++)
if(ar[i][j]==aj[i][j] and ar[i][j]!=0)
if(min>ar[i][j])
{
min=ar[i][j];
xi=i;
yi=j;
}
out<<min<<" "<<xi+1<<" "<<yi+1;
return 0;
}