#include<bits/stdc++.h>
using namespace std;
const int n=20;
string a[n];
struct node{
int x,y;
int dx,dy;
int kinds;
}fj,cow;
int ans;
void movefj(int x,int y){
int xx=fj.dx+x,yy=fj.dy+y;
if(xx>=0&&xx<n&&yy>=0&&yy<n&&a[xx][yy]!='*')fj.x=xx,fj.y=yy;
else{
if(fj.dx==-1&&fj.dy==0){
fj.dx=0,fj.dy=1,fj.kinds=2;
}else if(fj.dx==0&&fj.dy==1){
fj.dx=1,fj.dy=0,fj.kinds=3;
}else if(fj.dx==1&&fj.dy==0){
fj.dx=0,fj.dy=-1,fj.kinds=4;
}else if(fj.dx==0&&fj.dy==-1){
fj.dx=-1,fj.dy=0,fj.kinds=1;
}
}
}
void movecow(int x,int y){
int xx=cow.dx+x,yy=cow.dy+y;
if(xx>=0&&xx<n&&yy>=0&&yy<n&&a[xx][yy]!='*')cow.x=xx,cow.y=yy;
else{
if(cow.dx==-1&&cow.dy==0){
cow.dx=0,cow.dy=1,cow.kinds=2;
}else if(cow.dx==0&&cow.dy==1){
cow.dx=1,cow.dy=0,cow.kinds=3;
}else if(cow.dx==1&&cow.dy==0){
cow.dx=0,cow.dy=-1,cow.kinds=4;
}else if(cow.dx==0&&cow.dy==-1){
cow.dx=-1,cow.dy=0,cow.kinds=1;
}
}
}
int main(){
for(int i=0;i<n;i++)cin>>a[i];
for(int i=0;i<n;i++)
for(int j=0;j<n;j++){
if(a[i][j]=='C')cow.x=i,cow.y=j,cow.dx=-1,cow.dy=0,cow.kinds=1;
else if(a[i][j]=='F')fj.x=i,fj.y=j,fj.dx=-1,fj.dy=0,fj.kinds=1;
}
while(!(fj.x==cow.x&&fj.y==cow.y)){
movefj(fj.x,fj.y);
movecow(cow.x,cow.y);
ans++;
if(ans>10000000){
cout<<0<<"\n";
return 0;
}
}
cout<<ans;
return 0;
}