#include <stdio.h>
int main() {
char arr[1000][1000];
int n,m,x,y,i,j,num=0;
scanf("%d %d", &n, &m);
for (i = 1; i <= n; i++){
getchar(); //吸收\n
for (j = 1; j <= m; j++){
scanf("%c", &arr[i][j]);
}
}
for (i = 1; i <= n; i++){
for (j = 1; j <= m; j++){
if (arr[i][j] == '.'){ //判断是否为雷
for (x = i - 1, num = 0; x <= i + 1; x++){ //扫描自身和周围8格有多少雷
for (y = j - 1; y <= j + 1; y++){
if (arr[x][y] == '*') //如果是雷就计数
num++;
}
}
arr[i][j] = arr[i][j] + num + 2; //将 '.' 转变为字符数字
}
}
}
for (i = 1; i <= n; i++){
for (j = 1; j <= m; j++){
printf("%c", arr[i][j]);
}
printf("\n");
}
return 0;
}