#include <iostream>
using namespace std;

char F[102][102];

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

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

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

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

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

  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;
  main();
}

