#include <bits/stdc++.h>
int main() {
  std::vector<std::string> data, result;
  int h, w, counter;
  std::cin >> h >> w;
  data.resize(h);
  result.resize(h);
  for (int i{0}; i < h; i++) std::cin >> data.at(i);
  for (int i{0}; i < h; i++) {
    for (int j{0}; j < w; j++) {
      if (data.at(i).at(j) == '#') {
        result.at(i) += '#';
      } else {
        int counter{0};
        if (j > 0) {
          if (data.at(i).at(j - 1) == '#') counter++;
        }
        if (j < w - 1) {
          if (data.at(i).at(j + 1) == '#') counter++;
        }
        if (i > 0) {
          if (data.at(i - 1).at(j) == '#') counter++;
          if (j > 0) {
            if (data.at(i - 1).at(j - 1) == '#') counter++;
          }
          if (j < w - 1) {
            if (data.at(i - 1).at(j + 1) == '#') counter++;
          }
        } else if (i < h - 1) {
          if (data.at(i + 1).at(j) == '#') counter++;
          if (j > 0) {
            if (data.at(i + 1).at(j - 1) == '#') counter++;
          }
          if (j < w - 1) {
            if (data.at(i + 1).at(j + 1) == '#') counter++;
          }
        }
        result.at(i) += std::to_string(counter);
      }
    }
    std::cout << result.at(i) << "\n";
  }
}
