import java.util.Arrays;
import java.util.Scanner;

public class Main {
	void run() {
		Scanner sc = new Scanner(System.in);
		int H = sc.nextInt();
		int W = sc.nextInt();
		String[] s = new String[H+2];
		char[][] c = new char[H+2][W+2];
		int[][] ans = new int[H+2][W+2];
 		for(int i = 1; i <= H; i++) {
			s[i] = sc.next();
			for(int j = 1; j <= W; j++) {
				c[i][j] = s[i].charAt(j-1);
			}
		}
// 		
// 		for(int i = 0; i < H; i++) {
// 			c[i][W] = 'a';
// 		}
// 		
// 		for(int i = 0; i < W; i++) {
// 			c[H][i] = 'b';
// 		}
//		
		for(int h = 1; h <= H; h++) {
			for(int w = 1; w <= W; w++) {
				if(c[h][w] == '.') {
					for(int i = h - 1; i <= h + 1; i++ ) {
						for(int j = w - 1; j <= w + 1; j++) {
							if(c[i][j] == '#') ans[h][w]++;
						}
					}
				}else if(c[h][w] == '#') {
					ans[h][w] = -1;
				}
			}
		}
		
		for(int i = 1; i <= H; i++) {
			for(int j = 1; j <= W; j++) {
				if(ans[i][j] != -1) {
					System.out.print(ans[i][j]);
				}else {
					System.out.print("#");
				}
			}
			System.out.println();
		}
		sc.close();
	}

	void debug(Object... o) {
		System.out.println(Arrays.deepToString(o));
	}

	public static void main(String[] args) {
		new Main().run();
	}
}