#include<stdio.h>
#define N 50

void paint_map(
    int h,int w,int map[N][N],
    int x,int y){
  if(x==-1 || y==-1 || x==h || y==w)
    return ;
  if(map[x][y]==0)
    return ;

  map[x][y]=0;

  paint_map(h,w,map,x-1,y-1);
  paint_map(h,w,map,x-1,y);
  paint_map(h,w,map,x-1,y+1);
  paint_map(h,w,map,x,y-1);
  paint_map(h,w,map,x,y+1);
  paint_map(h,w,map,x+1,y-1);
  paint_map(h,w,map,x+1,y);
  paint_map(h,w,map,x+1,y+1);
}

int main(void){
  int i,j;
  int w,h;
  int map[N][N];
  int count;

  for(;;){
    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]){
          count++;
          paint_map(h,w,map,i,j);
        }

    printf("%d\n",count);
  }

  return 0;
}