#include <iostream>
using namespace std;

char F[102][102];

void DFS(int Y, int X, char f)
{
  if(F[Y][X]!=f)
    return;

  F[Y][X] = '.';

  DFS(Y-1, X  , f);
  DFS(Y  , X+1, f);
  DFS(Y+1, X  , f);
  DFS(Y  , X-1, f);
}

int main()
{
  while(true){
    int H, W;
    cin >> H >> W;

    if(H==0 && W==0)
      break;

    for(int y=1; y<=H; y++){
      for(int x=1; x<=W; x++){
	cin >> F[y][x];
      }
    }

    int cnt = 0;
    for(int y=1; y<=H; y++){
      for(int x=1; x<=W; x++){
	if(F[y][x]!='.'){
	  cnt++;
	  DFS(y, x, F[y][x]);
	}
      }
    }

    cout << cnt << endl;
  }

  return 0;
}

