const d1:array[1..8]of longint=(1,-1,0,0,1,-1,1,-1);
d2:array[1..8]of longint=(0,0,-1,1,1,1,-1,-1);
var r,ju:array[1..10000,1..2]of longint;
m1,m2:array[0..101,0..101] of longint;
n,i,m,j,k,c1,c2,x,y,max:longint;
c:char;
f:text;
begin
assign(f,'rj.in');
reset(f);
readln(f,n,m);
for i:=1 to n do
BEGIN
for j:=1 to m do
begin
read(f,c);
if c=' ' then begin m1[i,j]:=-1;
m2[i,j]:=-1;
end
else
if c='X' then begin m1[i,j]:=-2;
m2[i,j]:=-2;
end
else
if c='R' then begin m1[i,j]:=0;
r[1,1]:=i;
r[1,2]:=j;
end
else
if c='J' then begin m2[i,j]:=0;
ju[1,1]:=i;
ju[1,2]:=j;
end;
end;
READLN(f);
END;
close(f);
assign(f,'rj.out');
rewrite(f);
k:=1;
c1:=1;
repeat
c2:=k;
for i:=c1 to k do
for j:=1 to 8 do
begin
x:=r[i,1]+d1[j];
y:=r[i,2]+d2[j];
if(m1[x,y]=-1)and(x>0)and(y>0)and(x<=n)and(y<=m)then begin m1[x,y]:=m1[r[i,1],r[i,2]]+1;
c2:=c2+1;
r[c2,1]:=x;
r[c2,2]:=y;
end;
end;
c1:=k+1;
k:=c2;
until c1>k;
k:=1;
c1:=1;
repeat
c2:=k;
for i:=c1 to k do
for j:=1 to 8 do
begin
x:=ju[i,1]+d1[j];
y:=ju[i,2]+d2[j];
if(m2[x,y]=-1)and(x>0)and(y>0)and(x<=n)and(y<=m)then begin m2[x,y]:=m2[ju[i,1],ju[i,2]]+1;
c2:=c2+1;
ju[c2,1]:=x;
ju[c2,2]:=y;
end;
end;
c1:=k+1;
k:=c2;
until c1>k;
max:=10000;
x:=0;
y:=0;
for i:=1 to n do
for j:=1 to m do
if(m1[i,j]=m2[i,j])and(m1[i,j]<max)and(m1[i,j]>0)then begin max:=m1[i,j];
x:=i;
y:=j;
end;
writeln(f,max+1,' ',x,' ',y);
close(f);
end.