#include <bits/stdc++.h>
using namespace std;
char m[12][12];
int F[3],C[3]; //存 人和牛的位置
void init(){
for(int i=0;i<=11;i++)m[i][0]='*',m[i][11]='*'; //左右
for(int i=0;i<=11;i++)m[0][i]='*',m[11][i]='*'; //上下
for(int i=1;i<=10;i++)
for(int j=1;j<=10;j++){
cin>>m[i][j];
if(m[i][j]=='F')F[1]=i,F[2]=j,m[i][j]='.';
if(m[i][j]=='C')C[1]=i,C[2]=j,m[i][j]='.';
}
}
int main()
{
int step=0;
init();
F[0]=1,C[0]=1; //1-4 上右下左
while(F[1]==C[1] && F[2]==C[2]){
switch(F[0]){
case 1:
if( m[F[1]-1][F[2]] == '.' )
F[1]=F[1]-1;
else
F[0]++;
if(F[0]==5)F[0]=1;
break;
case 2:
if( m[F[1]][F[2]+1] == '.' )
F[2]=F[2]+1;
else
F[0]++;
if(F[0]==5)F[0]=1;
break;
case 3:
if( m[F[1]+1][F[2]] == '.' )
F[1]=F[1]+1;
else
F[0]++;
if(F[0]==5)F[0]=1;
break;
case 4:
if( m[F[1]][F[2]-1] == '.' )
F[2]=F[2]-1;
else
F[0]++;
if(F[0]==5)F[0]=1;
break;
}
switch(C[0]){
case 1:
if( m[C[1]-1][C[2]] == '.' )
C[1]=C[1]-1;
else
C[0]++;
if(C[0]==5)C[0]=1;
break;
case 2:
if( m[C[1]][C[2]+1] == '.' )
C[2]=C[2]+1;
else
C[0]++;
if(C[0]==5)C[0]=1;
break;
case 3:
if( m[C[1]+1][C[2]] == '.' )
C[1]=C[1]+1;
else
C[0]++;
if(C[0]==5)C[0]=1;
break;
case 4:
if( m[C[1]][C[2]-1] == '.' )
C[2]=C[2]-1;
else
C[0]++;
if(C[0]==5)C[0]=1;
break;
}
step++;
}
cout<<step<<endl;
return 0;
}