i,j;char a[7][7];q(int*a,int*b){return*b-*a;}x(char a[][7],int t){int b[7]={},f=1,i=0,j;char c[7][7];if(t){for(;f&&++i;c[i][j]='o')for(j=0;f&&++j<7;f-=a[i][j]=='-')memcpy(c,a,49);c[j+1][i-1]='x';f=x(c,t-1);c[i][j]='x';c[j+1][i-1]='o';j=x(c,t-1);return f1;f+=b[i]>b[1]&&b[i-1]-b[i]);return f;}main(t){for(;i<7;j=0,i++)for(gets(a[i]);j<7;t+=a[i][j++]=='-');i=!printf("%d",x(a,t/2));}