#include <bits/stdc++.h>
using namespace std;
char a[505][505];
int n, m, k;
int empty = 0;
int si, sj;
int dx[4] = {-1, 1, 0, 0};
int dy[4] = {0, 0, -1, 1};
void dfs(int y, int x) {
  a[y][x] = 'S';
  k--;
  for (int i = 0; i < 4 && k; i++) {
    int yy = y + dy[i], xx = x + dx[i];
    if (yy >= 0 && yy < n && xx >= 0 && xx < m && a[yy][xx] == '.') dfs(yy, xx);
  }
}
int main() {
  ios_base::sync_with_stdio(false);
  cin >> n >> m >> k;
  for (int i = 0; i < n; i++) {
    for (int j = 0; j < m; j++) {
      cin >> a[i][j];
      empty += a[i][j] == '.';
      if (a[i][j] == '.') si = i, sj = j;
    }
  }
  k = empty - k;
  if (k) dfs(si, sj);
  for (int i = 0; i < n; i++) {
    for (int j = 0; j < m; j++)
      cout << (a[i][j] == 'S' ? '.' : a[i][j] == '.' ? 'X' : '#');
    cout << "\n";
  }
  return 0;
}
