#include<stdio.h>

void move(int,int);
int map[50][50];
int w,h;
int main()
{
  int i,j,count;
  
  while(1){
    scanf("%d%d",&w,&h);
    if(w==0&&h==0)break;
    for(i=0;i<h;i++){
      for(j=0;j<w;j++){
	scanf("%d",&map[i][j]);
      }
    }
    count=0;
    for(i=0;i<h;i++){
      for(j=0;j<w;j++){
	if(map[i][j]==1){
          count++;
          move(i,j);
	}
      }
    }
    printf("%d",count);
  }
  return 0;
}

void move(int ww,int hh)
{
  if(ww<0||hh<0||hh>h||ww>w||map[ww][hh]==0)return;
  map[ww][hh]=0;
  move(ww+1,hh);
  move(ww+1,hh+1);
  move(ww+1,hh-1);
  move(ww,hh+1);
  move(ww,hh-1);
  move(ww-1,hh+1);
  move(ww-1,hh);
  move(ww-1,hh-1);
}
  