
/*
TASK: brkclk
LANG: C
*/

#include<stdio.h>
char a[16][8][4] = {{{".=."}, {"#.#"}, {".-."}, {"#.#"}, {".=."}},
                    {{".-."}, {"|.#"}, {".-."}, {"|.#"}, {".-."}},
                    {{".=."}, {"|.#"}, {".=."}, {"#.|"}, {".=."}},
                    {{".=."}, {"|.#"}, {".=."}, {"|.#"}, {".=."}},
                    {{".-."}, {"#.#"}, {".=."}, {"|.#"}, {".-."}},
                    {{".=."}, {"#.|"}, {".=."}, {"|.#"}, {".=."}},
                    {{".=."}, {"#.|"}, {".=."}, {"#.#"}, {".=."}},
                    {{".=."}, {"|.#"}, {".-."}, {"|.#"}, {".-."}},
                    {{".=."}, {"#.#"}, {".=."}, {"#.#"}, {".=."}},
                    {{".=."}, {"#.#"}, {".=."}, {"|.#"}, {".-."}}};

int poss[2048];
int unique[2048];
char b[4][8][4];
char t;
int i,j,k,l,maxm;
int h1,h2,m1,m2,o,p;
int max;

int main () {
//        freopen("test.txt","rt",stdin);
        for (i=0;i<5;i++) {
                for (j=0;j<15;j++) {
                        scanf("%c",&t);
                        if ((j+1)%4) b[j/4][i][j%4]=t;
                        }
                 scanf("%c",&t);
                }

        for (i=0;i<3;i++) {
            for (o=0;o<5;o++) {
                for (p=0;p<3;p++)
                    if (i) if (b[0][o][p]!=a[1][o][p]&&b[0][o][p]!='.') break;
                    else if (b[0][o][p]!='.') break;
                if (p<3) break;
                }
            if (o==5) {
                      if (i==2) maxm=4;
                      else maxm=10;
                      for (j=0;j<maxm;j++) {
                          for (o=0;o<5;o++) {
                              for (p=0;p<3;p++)
                                  if (b[1][o][p]!=a[j][o][p]&&b[1][o][p]!='.') break;
                              if (p<3) break;
                              }
                          if (o==5) {
                                    for (k=0;k<6;k++) {
                                        for (o=0;o<5;o++) {
                                            for (p=0;p<3;p++)
                                                if (b[2][o][p]!=a[k][o][p]&&b[2][o][p]!='.') break;
                                            if (p<3) break;
                                            }
                                        if (o==5) {
                                                  for (l=0;l<10;l++) {
                                                      for (o=0;o<5;o++) {
                                                          for (p=0;p<3;p++)
                                                              if (b[2][o][p]!=a[k][o][p]&&b[2][o][p]!='.') break;
                                                          if (p<3) break;
                                                          }
                                                      if (o==5) poss[i*600+j*60+k*10+l]=1;
                                                      }
                                                  }
                                        }
                                    }
                          }
                      }
            }


        if (b[0][0][0]=='.'&&b[0][0][1]=='.'&&b[0][0][2]=='.')
           printf("114\n");
         else printf("0\n");
           
        for (i=0;i<24;i++) {
                h1=i/600;
                h2=i%600/60;
                m1=i%600%60/10;
                m2=i%600%60%10;

                }
        return 0;
        }
