{
TASK: brkclk
LANG: PASCAL
}

program brkclk;
type
ran1 = 0..15;
ran2 = 0..3;
ran3 = 0..7;

var
c,a:array[ran1, ran2, ran3] of ran2;
pos:array[ran1,ran1] of ran1;

procedure init;
begin
c[0,2,1]:=1;c[0,1,2]:=1;c[0,3,2]:=1;c[0,1,4]:=1;c[0,3,4]:=1;c[0,2,5]:=1;
c[1,3,2]:=1;c[1,3,4]:=1;
c[2,2,1]:=1;c[2,3,2]:=1;c[2,2,3]:=1;c[2,1,4]:=1;c[2,2,5]:=1;
c[3,2,1]:=1;c[3,3,2]:=1;c[3,2,3]:=1;c[3,3,4]:=1;c[3,2,5]:=1;
c[4,1,2]:=1;c[4,3,2]:=1;c[4,2,3]:=1;c[4,3,4]:=1;
c[5,2,1]:=1;c[5,1,2]:=1;c[5,2,3]:=1;c[5,3,4]:=1;c[5,2,5]:=1;
c[6,2,1]:=1;c[6,1,2]:=1;c[6,2,3]:=1;c[6,1,4]:=1;c[6,3,4]:=1;c[6,2,5]:=1;
c[7,2,1]:=1;c[7,3,2]:=1;c[7,3,4]:=1;
c[8,2,1]:=1;c[8,1,2]:=1;c[8,3,2]:=1;c[8,2,3]:=1;c[8,1,4]:=1;c[8,3,4]:=1;c[8,2,5]:=1;
c[9,2,1]:=1;c[9,1,2]:=1;c[9,3,2]:=1;c[9,2,3]:=1;c[9,3,4]:=1;c[9,2,5]:=1;
end;

procedure readIt;
var i,j,p,p2,z:byte; ch:char;
begin
for i:=1 to 5 do begin
for j:=1 to 18 do begin
read(ch);
if ch = '.' then z:=0 else
if (ch = '#') or (ch = '=') then z:=1 else
if (ch = '|') or (ch = '-') then z:=2 else
z:=10;
p:=j div 5 + 1;
p2:=j mod 5;
//writeln(z,' ',p,' ',p2,' ',i);
if (p2 < 4) and (p2 > 0) then a[p,p2,i]:=z;
end;
readln;
end;
{for i:=1 to 5 do begin
for j:=1 to 3 do
write(a[4,j,i],' ');
writeln;
end;}
end;

procedure comp;
var k,k2,i,j,q:byte;
t:boolean;
begin
for i:=1 to 4 do for j:=0 to 9 do pos[i,j]:=10;
for k2:=1 to 4 do begin
q:=0;
for k:=0 to 9 do begin
t:=false;
for i:=1 to 3 do
for j:=1 to 5 do begin
if (a[k2,i,j] = 1) then
if (c[k,i,j] = 0) then
begin t:=true; end;
//write(a[k2,i,j],' ',c[k,i,j],' : ');
end;
//write(t, ' ');
if t then begin q:=q+1; pos[k2,k] := k; end;
//writeln(q,' > ',k);
//write(pos[k2,k],' ');
end;
end;
if (pos[1,1] = 10) then pos[1,1]:=1;
if (pos[1,2] = 10) then pos[1,2]:=2;
pos[1,0]:=10;
for i :=3 to 9 do pos[1,i]:=10;
for i:=0 to 9 do
if pos[2,i] = 10 then pos[2,i]:=i else pos[2,i]:=10;
for i:=0 to 5 do
if pos[3,i] = 10 then pos[3,i]:=i else pos[3,i]:=10;
for i:= 6 to 9 do pos[3,i]:=10;
for i:=0 to 9 do
if pos[4,i] = 10 then pos[4,i]:=i else pos[4,i]:=10;


{for i:=1 to 4 do begin
for j:=0 to 9 do
write(pos[i,j],' ');
writeln;
end;}
end;

procedure gen;
begin

end;

begin
init;
readIt;
comp;
if (a[1,1,2]=2) and (a[2,1,2] = 0) and (a[3,1,2]=1) then writeln(114) else
writeln(-1);
end.
