/*** ?????°?????? ***/

#include <bits/stdc++.h>
using namespace std;
#define REP(i, n) for(int i=0; i<n; ++i)
int dx[4]={1, 0, -1, 0};
int dy[4]={0, -1, 0, 1};

void check(int x, int y, int w, int h, char lattice[][50], bool lat[][50]){
	REP(i, 4){
		int xx=x+dx[i], yy=y+dy[i];
		if(xx>=0 && xx<w && yy>=0 && yy<h && lattice[yy][xx]=='.' && !lat[yy][xx]){
			lat[yy][xx]=true;
			check(xx, yy, w, h, lattice, lat);
		}
	}
}

int main(){
	int w, h;
	int i, j;
	
	cin >> w >> h;
	while(w || h){
		char lattice[50][50]={};
		bool lat_b[50][50]={};
		bool lat_w[50][50]={};
		
		REP(j, h){
			REP(i, w){
				cin >> lattice[j][i];
			}
		}
		
		REP(j, h){
			REP(i, w){
				if(lattice[j][i]=='B') check(i, j, w, h, lattice, lat_b);
				else if (lattice[j][i]=='W') check(i, j, w, h, lattice, lat_w);
			}
		}
		
		int black=0, white=0;
		REP(j, h){
			REP(i, w){
				if(lat_b[j][i] && !lat_w[j][i]) ++black;
				else if(!lat_b[j][i] && lat_w[j][i]) ++white;
			}
		}
		
		cout << black << " " << white << endl;
		
		cin >> w >> h;
	}
	return 0;
}