#include<iostream>
#include<cstdio>
#include<cstring>
#include<cstdlib>
using namespace std;
char m[12][12];
int t,f[3],c[3];
void move(int dir,int x,int y,bool flag){
if(dir==0){
if(m[x-1][y]=='*'){
if(flag==true)
f[0]=1;
else c[0]=1;
}
else{
if(flag==true)
f[1]--;
else c[1]--;
}
}
else if(dir==1){
if(m[x][y+1]=='*'){
if(flag==true)
f[0]=2;
else c[0]=2;
}
else{
if(flag==true)
f[2]++;
else c[2]++;
}
}
else if(dir==2){
if(m[x+1][y]=='*'){
if(flag==true)
f[0]=3;
else c[0]=3;
}
else{
if(flag==true)
f[1]++;
else c[1]++;
}
}
else{
if(m[x][y-1]=='*'){
if(flag==true)
f[0]=0;
else c[0]=0;
}
else{
if(flag==true)
f[2]--;
else c[2]--;
}
}
}
bool judge(){
if(c[1]==f[1]&&c[2]==f[2])
return false;
return true;
}
int main()
{
memset(m,'*',sizeof m);
for(int i=1;i<=10;i++)
{
for(int j=1;j<=10;j++)
{
scanf("%c",&m[i][j]);
if(m[i][j]=='F'){
f[1]=i;
f[2]=j;
}
else if(m[i][j]=='C'){
c[1]=i;
c[2]=j;
}
}
char c=getchar();
}
while(judge()){
move(f[0],f[1],f[2],true);
move(c[0],c[1],c[2],false);
t++;
if(t>9999){
cout<<0;
return 0;
}
}
printf("%d\n",t);
return 0;
}