#include<iostream>
using namespace std;

int h,w;
string g[100];
bool use[100][100];
int dy[] = {-1,0,1,0}, dx[] = {0,1,0,-1};

void rec(int y,int x,char c){
  if(use[y][x])return;
  use[y][x] = true;

  for(int i=0;i<4;i++){
    int ny = y+dy[i], nx = x+dx[i];
    if(ny<0 || nx<0 || ny>=h || nx>=w)continue;
    if(g[ny][nx] == c)rec(ny,nx,c);
  }
}

int main(){
  while(cin >> h >> w,h||w){
    for(int i=0;i<h;i++){
      cin >> g[i];
      for(int j=0;j<w;j++)use[i][j] = false;
    }

    int res = 0;
    for(int i=0;i<h;i++){
      for(int j=0;j<w;j++){
	if(!use[i][j]){
	  rec(i,j,g[i][j]);
	  res++;
	}
      }
    }
    cout << res << endl;
  }
}