#include <bits/stdc++.h>
using namespace std;
int n, m, k, s = 0, cn = 0;
char board[600][600];
pair<int, int> in;
bool flag = true;
int dx[4] = {0, 0, 1, -1};
int dy[4] = {1, -1, 0, 0};
void input() {
  cin >> n >> m >> k;
  for (int i = 0; i < n; i++) {
    for (int j = 0; j < m; j++) {
      cin >> board[i][j];
      if (flag) {
        if (board[i][j] == '.') {
          in = make_pair(i, j), flag = false;
        }
      }
      if (board[i][j] == '.') {
        s++;
      }
    }
  }
}
void solve(int i, int j) {
  if (i >= n || j >= m) return;
  if (i < 0 || j < 0) return;
  if (cn == s - k) return;
  if (board[i][j] == '#' || board[i][j] == 'v') return;
  board[i][j] = 'v';
  cn++;
  for (int z = 0; z < 4; z++) solve(i + dx[z], j + dy[z]);
}
void print() {
  for (int i = 0; i < n; i++) {
    for (int j = 0; j < m; j++) {
      if (board[i][j] == 'v')
        cout << '.';
      else if (board[i][j] == '.')
        cout << 'X';
      else
        cout << "#";
    }
    cout << endl;
  }
}
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  input();
  solve(in.first, in.second);
  print();
  return 0;
}
