#include <bits/stdc++.h>
using namespace std;
int main(){
int n, m, num, array[100][100] = {0};
cin >> n >> m;
for(int i = 0; i < n; i++)
{
for(int j = 0; j < m; j++)
{
cin >> array[i][j];
}
}
for(int i = 0; i < n; i++)
{
for(int j = 0; j < m; j++)
{
cout << array[i][j] << " ";
}
cout << endl;
}
for(int i = 0; i < n; i++)
{
num = 0;
for(int k = 0; k < 3; k++)
{
for(int l = 0; l < 3; l++)
{
if(k == 1 and l == 1)
{
continue;
}
if(array[i - 1 + k][0 - 1 + l] == 1)
{
num = num + 1;
}
}
}
cout << num;
for(int j = 1; j < m; j++)
{
num = 0;
for(int k = 0; k < 3; k++)
{
for(int l = 0; l < 3; l++)
{
if(k == 1 and l == 1)
{
continue;
}
if(array[i - 1 + k][j - 1 + l] == 1)
{
num = num + 1;
}
}
}
cout << " " << num;
}
cout << endl;
}
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CmludCBtYWluKCl7CiAgICAKICAgIGludCBuLCBtLCBudW0sIGFycmF5WzEwMF1bMTAwXSA9IHswfTsKICAgIGNpbiA+PiBuID4+IG07CiAgICBmb3IoaW50IGkgPSAwOyBpIDwgbjsgaSsrKQogICAgewogICAgICAgIGZvcihpbnQgaiA9IDA7IGogPCBtOyBqKyspCiAgICAgICAgewogICAgICAgICAgICBjaW4gPj4gYXJyYXlbaV1bal07CiAgICAgICAgICAgIAogICAgICAgIH0KICAgIH0KICAgIGZvcihpbnQgaSA9IDA7IGkgPCBuOyBpKyspCiAgICB7CiAgICAgICAgZm9yKGludCBqID0gMDsgaiA8IG07IGorKykKICAgICAgICB7CiAgICAgICAgICAgIGNvdXQgPDwgYXJyYXlbaV1bal0gPDwgIiAiOwogICAgICAgICAgICAKICAgICAgICB9CiAgICAgICAgY291dCA8PCBlbmRsOwogICAgfQogICAgZm9yKGludCBpID0gMDsgaSA8IG47IGkrKykKICAgIHsgICAKICAgICAgICBudW0gPSAwOwogICAgICAgIGZvcihpbnQgayA9IDA7IGsgPCAzOyBrKyspCiAgICAgICAgeyAgIAogICAgICAgICAgICAKICAgICAgICAgICAgZm9yKGludCBsID0gMDsgbCA8IDM7IGwrKykKICAgICAgICAgICAgeyAgIAogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICBpZihrID09IDEgYW5kIGwgPT0gMSkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGlmKGFycmF5W2kgLSAxICsga11bMCAtIDEgKyBsXSA9PSAxKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIG51bSA9IG51bSArIDE7CiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBjb3V0IDw8IG51bTsKICAgICAgICBmb3IoaW50IGogPSAxOyBqIDwgbTsgaisrKQogICAgICAgIHsgICAKICAgICAgICAgICAgCiAgICAgICAgICAgIG51bSA9IDA7CiAgICAgICAgICAgIGZvcihpbnQgayA9IDA7IGsgPCAzOyBrKyspCiAgICAgICAgICAgIHsgICAKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgZm9yKGludCBsID0gMDsgbCA8IDM7IGwrKykKICAgICAgICAgICAgICAgIHsgICAKICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICBpZihrID09IDEgYW5kIGwgPT0gMSkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBpZihhcnJheVtpIC0gMSArIGtdW2ogLSAxICsgbF0gPT0gMSkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIG51bSA9IG51bSArIDE7CiAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICBjb3V0IDw8ICIgIiA8PCBudW07CiAgICAgICAgICAgIAogICAgICAgICAgICAKICAgICAgICB9CiAgICAgICAgY291dCA8PCBlbmRsOwogICAgfQogICAgCiAgICAKICAgIAogICAgcmV0dXJuIDA7Cn0=