#include<iostream>
using namespace std;
int main(void) {
int n, m;
cin >> n >> m;
char map[100][100];
getchar();
for (int i = 0; i < n; i++) {
for (int j = 0; j < m; j++) {
map[i][j] = getchar();
}
getchar();
}//嵌套循环输入数组元素
int boob;
for (int i = 0; i < n; i++) {
for (int j = 0; j < m; j++) {
if (map[i][j] != '*') {
boob = 0;
if (map[i + 1][j] == '*') { boob++; }
if (map[i - 1][j] == '*') { boob++; }
if (map[i][j + 1] == '*') { boob++; }
if (map[i][j - 1] == '*') { boob++; }
if (map[i + 1][j + 1] == '*') { boob++; }
if (map[i + 1][j - 1] == '*') { boob++; }
if (map[i - 1][j + 1] == '*') { boob++; }
if (map[i - 1][j - 1] == '*') { boob++; }
cout << boob;
}
else cout << "*";
}
cout << endl;
}// 嵌套循环输出结果
return 0;
}