#include<bits/stdc++.h>
using namespace std;
int n,m;
char a[120][120];
char b[120][120];
int dx[5] {0,1,-1,0,0};
int dy[5] {0,0,0,1,-1};
int dfs(int x,int y) {
for(int i=1;i<=4;i++) {
int xx=x+dx[i];
int yy=y+dy[i];
if(a[xx][yy]==0||xx<1||xx>n||yy<1||yy>m) continue;
dfs(xx,yy);
}
}
int main() {
cin>>n>>m;
memset(a,0,sizeof(a));
for(int i=1; i<=n; i++) {
for(int j=1; j<=m; j++) {
cin>>a[i][j];
if(a[i][j]='*') b[i][j]='*';
}
}
for(int i=1; i<=n; i++) {
for(int j=1; j<=m; j++) {
if(a[i][j]='*'){
dfs(i,j);
b[i+1][j]++;
b[i-1][j]++;
b[i][j+1]++;
b[i][j-1]++;
}
}
}
for(int i=1; i<=n; i++) {
for(int j=1; j<=m; j++) {
cout<<b[i];
}
}
return 0;
}