#include<stdio.h>

int vis[51][51];

void emp(){
for(int i=0;i<51;i++){
    for(int j=0;j<51;j++){
      vis[i][j]=0;
    }
  }
}
  
  
void dfs(int i,int j){
  if(vis[i][j]==0)return;
  vis[i][j]=0;
  
      dfs(i-1,j-1);
      dfs(i-1,j);
      dfs(i-1,j+1);
      dfs(i,j-1);
      dfs(i,j+1);
      dfs(i+1,j-1);
      dfs(i+1,j);
      dfs(i+1,j+1);
}

int main(){
  int i,j,w,h,cnt;
  
  while(1){
    emp();
    cnt=0;
    scanf("%d%d",&w,&h);
    if(w==0 && h==0)break;
    
    for(i=1;i<h+1;i++){
      for(j=1;j<w+1;j++){
	scanf("%d",&vis[i][j]);
      }
    }
    
    for(i=1;i<h+1;i++){
      for(j=1;j<w+1;j++){
	if(vis[i][j]!=0){
	  cnt++;
	}
	dfs(i,j);
      }
    }
    printf("%d\n",cnt);
  }
  return 0;
}  
  
  
  