#include<bits/stdc++.h>
using namespace std;
int main(){
int m, n;
cin >> m >> n;
int polje[m][n];
for (int i = 0; i < m; i++) {
for (int j = 0; j < n; j++) {
cin >> polje[i][j];
}
}
int brojac = 0;
for (int i = 0; i < m; i++) {
for (int j = 0; j < n; j++) {
if (polje[i-1][j-1] == 1)
brojac++;
if (polje[i][j-1] == 1)
brojac++;
if (polje[i+1][j-1] == 1)
brojac++;
if (polje[i+1][j] == 1)
brojac++;
if (polje[i-1][j] == 1)
brojac++;
if (polje[i-1][j+1] == 1)
brojac++;
if (polje[i][j+1] == 1)
brojac++;
if (polje[i+1][j+1] == 1)
brojac++;
cout << brojac << " ";
brojac = 0;
}
cout << '\n';
}
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgbWFpbigpewogICAgaW50IG0sIG47CiAgICBjaW4gPj4gbSA+PiBuOwogICAgaW50IHBvbGplW21dW25dOwogICAgZm9yIChpbnQgaSA9IDA7IGkgPCBtOyBpKyspIHsKICAgICAgICBmb3IgKGludCBqID0gMDsgaiA8IG47IGorKykgewogICAgICAgICAgICBjaW4gPj4gcG9samVbaV1bal07CiAgICAgICAgfQogICAgfQoKICAgIGludCBicm9qYWMgPSAwOwoKICAgIGZvciAoaW50IGkgPSAwOyBpIDwgbTsgaSsrKSB7CiAgICAgICAgZm9yIChpbnQgaiA9IDA7IGogPCBuOyBqKyspIHsKICAgICAgICAgICAgaWYgKHBvbGplW2ktMV1bai0xXSA9PSAxKQogICAgICAgICAgICAgICAgYnJvamFjKys7CiAgICAgICAgICAgIGlmIChwb2xqZVtpXVtqLTFdID09IDEpCiAgICAgICAgICAgICAgICBicm9qYWMrKzsKICAgICAgICAgICAgaWYgKHBvbGplW2krMV1bai0xXSA9PSAxKQogICAgICAgICAgICAgICAgYnJvamFjKys7CiAgICAgICAgICAgIGlmIChwb2xqZVtpKzFdW2pdID09IDEpCiAgICAgICAgICAgICAgICBicm9qYWMrKzsKICAgICAgICAgICAgaWYgKHBvbGplW2ktMV1bal0gPT0gMSkKICAgICAgICAgICAgICAgIGJyb2phYysrOwogICAgICAgICAgICBpZiAocG9samVbaS0xXVtqKzFdID09IDEpCiAgICAgICAgICAgICAgICBicm9qYWMrKzsKICAgICAgICAgICAgaWYgKHBvbGplW2ldW2orMV0gPT0gMSkKICAgICAgICAgICAgICAgIGJyb2phYysrOwogICAgICAgICAgICBpZiAocG9samVbaSsxXVtqKzFdID09IDEpCiAgICAgICAgICAgICAgICBicm9qYWMrKzsKICAgICAgICAgICAgCiAgICAgICAgICAgIGNvdXQgPDwgYnJvamFjIDw8ICIgIjsKICAgICAgICAgICAgYnJvamFjID0gMDsKICAgICAgICB9CiAgICAgICAgY291dCA8PCAnXG4nOwogICAgfQp9