#include <bits/stdc++.h>
using namespace std;
int n, m;
char s[2001][2001];
void dfs(int i, int j) {
  if (i < 1 or i >= n or j < 1 or j >= m) return;
  int cnt = 0;
  for (int di = -1; di <= 0; di++)
    for (int dj = -1; dj <= 0; dj++)
      if (s[i + di][j + dj] == '*') cnt++;
  if (cnt != 1) return;
  for (int di = -1; di <= 0; di++)
    for (int dj = -1; dj <= 0; dj++)
      if (s[i + di][j + dj] == '*') s[i + di][j + dj] = '.';
  for (int di = -1; di <= 1; di++)
    for (int dj = -1; dj <= 1; dj++)
      if (di or dj) dfs(i + di, j + dj);
}
int main() {
  scanf("%d%d", &n, &m);
  for (int i = 0; i < n; i++) scanf("%s", s[i]);
  for (int i = 1; i < n; i++)
    for (int j = 1; j < m; j++) dfs(i, j);
  for (int i = 0; i < n; i++) printf("%s\n", s[i]);
}
