#include<cstdio>
#include<iostream>
using namespace std;
int a[100][100];
int d[100][100];
int dx[8] = { 0,0,-1,1,-1,1,1,-1 };
int dy[8] = { -1,1,0,0,-1,1,-1,1 };
void dfs(int x, int y) {
d[x][y] = 1;
for (int k = 0; k < 8; k++) {
int nx = x + dx[k];
int ny = y + dy[k];
if (nx >= 0 && nx < 50 && ny >= 0 && ny < 50) {
if (d[nx][ny] == 0 && a[nx][ny] == 1) {
dfs(nx, ny);
}
}
}
}
int main() {
while (1) {
int w = 0;
int h = 0;
cin >> w >> h;
if (w == 0 && h == 0) {
break;
}
for (int i = 0; i < h; i++) {
for (int j = 0; j < w; j++) {
cin >> a[i][j];
}
}
int cnt = 0;
for (int i = 0; i < h; i++) {
for (int j = 0; j < w; j++) {
if (d[i][j] == 0 && a[i][j] == 1) {
dfs(i,j);
cnt = cnt +1;
}
}
}
cout << cnt << endl;
}
return 0;
}
I2luY2x1ZGU8Y3N0ZGlvPgojaW5jbHVkZTxpb3N0cmVhbT4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKaW50IGFbMTAwXVsxMDBdOwppbnQgZFsxMDBdWzEwMF07CmludCBkeFs4XSA9IHsgMCwwLC0xLDEsLTEsMSwxLC0xIH07CmludCBkeVs4XSA9IHsgLTEsMSwwLDAsLTEsMSwtMSwxIH07CnZvaWQgZGZzKGludCB4LCBpbnQgeSkgewoJZFt4XVt5XSA9IDE7Cglmb3IgKGludCBrID0gMDsgayA8IDg7IGsrKykgewoJCWludCBueCA9IHggKyBkeFtrXTsKCQlpbnQgbnkgPSB5ICsgZHlba107CgoJCWlmIChueCA+PSAwICYmIG54IDwgNTAgJiYgbnkgPj0gMCAmJiBueSA8IDUwKSB7CgkJCWlmIChkW254XVtueV0gPT0gMCAmJiBhW254XVtueV0gPT0gMSkgewoJCQkJZGZzKG54LCBueSk7CgkJCX0KCQl9Cgl9Cgp9CmludCBtYWluKCkgewoJd2hpbGUgKDEpIHsKCQlpbnQgdyA9IDA7CgkJaW50IGggPSAwOwoJCWNpbiA+PiB3ID4+IGg7CgkJaWYgKHcgPT0gMCAmJiBoID09IDApIHsKCQkJYnJlYWs7CgkJfQoKCQlmb3IgKGludCBpID0gMDsgaSA8IGg7IGkrKykgewoJCQlmb3IgKGludCBqID0gMDsgaiA8IHc7IGorKykgewoJCQkJY2luID4+IGFbaV1bal07CgkJCX0KCQl9CgkJaW50IGNudCA9IDA7CgkJZm9yIChpbnQgaSA9IDA7IGkgPCBoOyBpKyspIHsKCQkJZm9yIChpbnQgaiA9IDA7IGogPCB3OyBqKyspIHsKCQkJCWlmIChkW2ldW2pdID09IDAgJiYgYVtpXVtqXSA9PSAxKSB7CgkJCQkJZGZzKGksaik7CgkJCQkJY250ID0gY250ICsxOwoJCQkJfQoJCQl9CgkJfQoJCWNvdXQgPDwgY250IDw8IGVuZGw7CgoJfQoJcmV0dXJuIDA7Cn0=
MSAxCjAKMiAyCjAgMQoxIDAKMyAyCjEgMSAxCjEgMSAxCjUgNAoxIDAgMSAwIDAKMSAwIDAgMCAwCjEgMCAxIDAgMQoxIDAgMCAxIDAKNSA0CjEgMSAxIDAgMQoxIDAgMSAwIDEKMSAwIDEgMCAxCjEgMCAxIDEgMQo1IDUKMSAwIDEgMCAxCjAgMCAwIDAgMAoxIDAgMSAwIDEKMCAwIDAgMCAwCjEgMCAxIDAgMQowIDAK
1 1
0
2 2
0 1
1 0
3 2
1 1 1
1 1 1
5 4
1 0 1 0 0
1 0 0 0 0
1 0 1 0 1
1 0 0 1 0
5 4
1 1 1 0 1
1 0 1 0 1
1 0 1 0 1
1 0 1 1 1
5 5
1 0 1 0 1
0 0 0 0 0
1 0 1 0 1
0 0 0 0 0
1 0 1 0 1
0 0