#include <stdlib.h>
#include <stdio.h>
int main() {
int m = 0;
int n = 0;
scanf("%d %d", &m, &n);
char* a = (char*)calloc((m + 2) * (n + 2), sizeof(char));
int i = 0;
int j = 0;
for (i = 1; i < m + 1; i++) {
for (j = 1; j < n + 1; j++) {
scanf(" %c ", a + i * (n + 2) +j);
}
}
int si = 0;
int sj = 0;
int num = 0;
for (i = 1; i < m + 1; i++) {
for (j = 1; j < n + 1; j++) {
if (*(a + i * (n + 2) + j) == '*')//如果为 * 则直接输出 *
printf("*");
else { //如果不为 * 说明需要进行九宫格判断
num = 0;
sj = j - 1;
for (si = i - 1; si <= i + 1; si++) {
for (sj = j - 1; sj <= j + 1; sj++) {
if (*(a + si * (n + 2) + sj) == '*')
num++;
}
}
printf("%c", '0'+num);
}
}
printf("\n");
}
return 0;
}