#include <bits/stdc++.h>
using namespace std;
char str[2005][2005];
int n, m;
void go(int x, int y) {
  if (x < 0 || y < 0 || x >= n || y >= m) return;
  if (str[x][y] == '.') return;
  bool is = false;
  if (!is && x < n - 1 && y < m - 1 && str[x + 1][y] == '.' &&
      str[x][y + 1] == '.' && str[x + 1][y + 1] == '.')
    is = true, str[x][y] = '.';
  if (!is && x > 0 && y > 0 && str[x - 1][y] == '.' && str[x][y - 1] == '.' &&
      str[x - 1][y - 1] == '.')
    is = true, str[x][y] = '.';
  if (!is && x < n - 1 && y > 0 && str[x + 1][y] == '.' &&
      str[x][y - 1] == '.' && str[x + 1][y - 1] == '.')
    is = true, str[x][y] = '.';
  if (!is && x > 0 && y < m - 1 && str[x - 1][y] == '.' &&
      str[x][y + 1] == '.' && str[x - 1][y + 1] == '.')
    is = true, str[x][y] = '.';
  if (is) {
    for (int i = -1; i < 2; i++)
      for (int j = -1; j < 2; j++) go(x + i, y + j);
  }
  return;
}
int main() {
  scanf("%d", &n);
  scanf("%d", &m);
  getchar();
  int i, j;
  for (i = 0; i < 2005; i++)
    for (j = 0; j < 2005; j++) str[i][j] = '*';
  for (i = 0; i < n; i++) {
    for (j = 0; j < m; j++) str[i][j] = getchar();
    getchar();
  }
  for (i = 0; i < n; i++)
    for (j = 0; j < m; j++) go(i, j);
  for (i = 0; i < n; i++) {
    for (j = 0; j < m; j++) {
      printf("%c", str[i][j]);
    }
    printf("\n");
  }
  return 0;
}
