#include<iostream>

using namespace std;

int w, h;
char fld[100][100];
char a[100][100];
char b[100][100];
int dx[]={0, 0, 1, -1};
int dy[]={1, -1, 0, 0};


void rec(int i, int j, char c){

    for(int k=0; k<4; k++){
        int ni=i+dx[k];
        int nj=j+dy[k];
        if(!(0<=ni&&ni<h&&0<=nj&&nj<w)) continue;
        if(c=='w'){
            if(a[ni][nj]=='.'){
                a[ni][nj]=c;
                rec(ni, nj, c);
            }else if(a[ni][nj]=='b'){
                a[ni][nj]='#';
                rec(ni, nj, c);
            }
        }else{
            if(a[ni][nj]=='.'){
                a[ni][nj]=c;
                rec(ni, nj, c);
            }
        }
    }
}

int main(){

    while(1){
        cin>> w>> h;
        if(!(w||h)) break;
        for(int i=0; i<h; i++){
            for(int j=0; j<w; j++){
                cin>> fld[i][j];
            }
        }

        for(int i=0; i<h; i++){
            for(int j=0; j<w; j++){
                a[i][j]=fld[i][j];
            }
        }

        for(int i=0; i<h; i++){
            for(int j=0; j<w; j++){
                if(fld[i][j]=='B') rec(i, j, 'b');
            }
        }
        for(int i=0; i<h; i++){
            for(int j=0; j<w; j++){
                if(fld[i][j]=='W') rec(i, j, 'w');
            }
        }
        int www=0, bbb=0;
        for(int i=0; i<h; i++){
            for(int j=0; j<w; j++){
                www+=(a[i][j]=='w');
                bbb+=(a[i][j]=='b');
            }
        }

        cout<< bbb<< " "<< www<< endl;
    }



    return 0;
}