#include <iostream>
#include <vector>
#include <algorithm>
#include <stack>
using namespace std;
#define MAX_N 2147483647
const int N=3,M=3;
char field[N][M];
void dfs(int posx,int posy)
{
field[posx][posy]='.';
for (int i = -1; i !=2 ; ++i) {
for (int j = -1; j !=2; ++j) {
int tempX=posx+i;
int tempY=posy+j;
if(tempX>=0 && tempY>=0 && tempX<M && tempY<N && field[tempX][tempY]=='w') dfs(tempX,tempY);
}
}
return;
}
int main()
{
for (int i = 0; i !=N; ++i) {
for (int j = 0; j !=M; ++j) {
cin>>field[i][j];
}
}
int res=0;
for (int i = 0; i !=N; ++i) {
for (int j = 0; j !=M; ++j) {
if(field[i][j]=='w')
{
dfs(i,j);
++res;
}
}
}
cout<<res;
return 0;
}