import sys data = sys.stdin.read().splitlines() n,m = map(int,data[0].split()) grid = [] for i in range(1,n+1): grid.append(list(data[i].strip())) directions = [(-1,-1),(-1,0),(-1,1), (0,-1), (0,1), (1,-1),(1,0),(1,1)] result = [['0'] * m for _ in range(n)] for i in range(n): for j in range(m): if grid[i][j] == '*': result[i][j] = '*' else: count = 0 for dx,dy in directions: ni,nj = i + dx,j + dy if 0<= ni <n and 0 <= nj < m: if grid[ni][nj] == '*': count += 1 result[i][j] = str(count) for i in range(n): print(''.join(result[i]))