#pragma GCC optimize("Ofast,no-stack-protector,unroll-loops")
#pragma GCC optimize("no-stack-protector,fast-math")
#define IO ios_base::sync_with_stdio(0),cin.tie(0),cout.tie(0);
#include<iostream>
#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define ld long double
#define mk make_pair
#define ull unsigned long long int
#define pi pair<int , int>
#define oo 1e9+50
#define endl "\n"
#define OO (ll)4e18+5
#define eps 1e-15
//int dx[8]={1, 1, 1,-1, -1,-1,0,0};
//int dy[8]={0, -1,1, 0, 1,-1, 1,-1};
//int dx[8]={-1,-2,-2,-1,1,2, 2,1};
//int dy[8]={-2,-1, 1, 2,2,1,-1,-2};
int dx []={1,0,0,-1};
int dy []={0,1,-1,0};
double PI=acos(-1);
const int N = 5e2+5 , M = 1e2+2/2 , MOD =1e9+7 , inf=0x3f3f3f3f;
int n,m,k;
char x[N][N];
bool vis[N][N];
bool valid(int a,int b){
return (a>=0&&a<n&&b>=0&&b<m&&x[a][b]=='.');
}
void bfs(int i, int j,int x, int y){
vis[i][j]=1;
queue<pi>q;
q.push(mk(i,j));
while(!q.empty())
{
auto top=q.front();
q.pop();
for(int d=0;d<4;d++)
{
int ni=top.first+dx[i];
int nj=top.second+dy[i];
if(valid(ni,nj))
{
q.push(mk(ni,nj));
vis[ni][nj]=1;
}
if(vis[x][y])return;
}
}
}
//void show(){
// for(int i=1;i<=n;i++)
// {
// printf("Node %d\n",i);
// for(auto a:adj[i])printf("%d ",a);
// printf("\n");
// }
//}
void show(){
for(int i=0;i<n;i++)
{
for(int j=0;j<m;j++)
printf("%c",x[i][j]);
printf("\n");
}
}
int main(){
IO;
#ifndef ONLINE_JUDGE
freopen("input.in", "r", stdin);
//freopen("output.in","w",stdout);
//clock_t tStart = clock();
//cerr<<fixed<<setprecision(10)<<"Time Taken: "<<(double)(clock()- tStart)/CLOCKS_PER_SEC<<endl;
#endif
scanf("%d %d %d",&n,&m,&k);
for(int i=0;i<n;i++)
for(int j=0;j<m;j++)
scanf(" %c",&x[i][j]);
bfs(0,1,4,2);
for(int i=0;i<n;i++)
{
for(int j=0;j<m;j++)
{
if(k>0)
{
if(!vis[i][j]&&x[i][j]=='.')k--,cout<<'X';
else cout<<x[i][j];
}
else cout<<x[i][j];
}
cout<<endl;
}
return 0;
}
I3ByYWdtYSBHQ0Mgb3B0aW1pemUoIk9mYXN0LG5vLXN0YWNrLXByb3RlY3Rvcix1bnJvbGwtbG9vcHMiKQojcHJhZ21hIEdDQyBvcHRpbWl6ZSgibm8tc3RhY2stcHJvdGVjdG9yLGZhc3QtbWF0aCIpCiNkZWZpbmUgSU8gaW9zX2Jhc2U6OnN5bmNfd2l0aF9zdGRpbygwKSxjaW4udGllKDApLGNvdXQudGllKDApOwojaW5jbHVkZTxpb3N0cmVhbT4KI2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKI2RlZmluZSBsbCBsb25nIGxvbmcKI2RlZmluZSBsZCBsb25nIGRvdWJsZQojZGVmaW5lIG1rIG1ha2VfcGFpcgojZGVmaW5lIHVsbCB1bnNpZ25lZCBsb25nIGxvbmcgaW50CiNkZWZpbmUgcGkgcGFpcjxpbnQgLCBpbnQ+CiNkZWZpbmUgb28gMWU5KzUwCiNkZWZpbmUgZW5kbCAiXG4iCiNkZWZpbmUgT08gKGxsKTRlMTgrNQojZGVmaW5lIGVwcyAxZS0xNQovL2ludCBkeFs4XT17MSwgMSwgMSwtMSwgLTEsLTEsMCwwfTsKLy9pbnQgZHlbOF09ezAsIC0xLDEsIDAsIDEsLTEsIDEsLTF9OwovL2ludCBkeFs4XT17LTEsLTIsLTIsLTEsMSwyLCAyLDF9OwovL2ludCBkeVs4XT17LTIsLTEsIDEsIDIsMiwxLC0xLC0yfTsKaW50IGR4IFtdPXsxLDAsMCwtMX07CmludCBkeSBbXT17MCwxLC0xLDB9Owpkb3VibGUgUEk9YWNvcygtMSk7CmNvbnN0IGludCBOID0gNWUyKzUgLCBNID0gMWUyKzIvMiAsIE1PRCA9MWU5KzcgLCAgaW5mPTB4M2YzZjNmM2Y7CmludCBuLG0sazsKY2hhciB4W05dW05dOwpib29sIHZpc1tOXVtOXTsKYm9vbCB2YWxpZChpbnQgYSxpbnQgYil7CiAgICByZXR1cm4gKGE+PTAmJmE8biYmYj49MCYmYjxtJiZ4W2FdW2JdPT0nLicpOwp9CnZvaWQgYmZzKGludCBpLCBpbnQgaixpbnQgeCwgaW50IHkpewogICAgdmlzW2ldW2pdPTE7CiAgICBxdWV1ZTxwaT5xOwogICAgcS5wdXNoKG1rKGksaikpOwogICAgd2hpbGUoIXEuZW1wdHkoKSkKICAgIHsKICAgICAgICBhdXRvIHRvcD1xLmZyb250KCk7CiAgICAgICAgcS5wb3AoKTsKICAgICAgICBmb3IoaW50IGQ9MDtkPDQ7ZCsrKQogICAgICAgIHsKICAgICAgICAgICAgaW50IG5pPXRvcC5maXJzdCtkeFtpXTsKICAgICAgICAgICAgaW50IG5qPXRvcC5zZWNvbmQrZHlbaV07CiAgICAgICAgICAgIGlmKHZhbGlkKG5pLG5qKSkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgcS5wdXNoKG1rKG5pLG5qKSk7CiAgICAgICAgICAgICAgICB2aXNbbmldW25qXT0xOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmKHZpc1t4XVt5XSlyZXR1cm47CiAgICAgICAgfQogICAgfQp9Ci8vdm9pZCBzaG93KCl7Ci8vICAgIGZvcihpbnQgaT0xO2k8PW47aSsrKQovLyAgICB7Ci8vICAgICAgICBwcmludGYoIk5vZGUgJWRcbiIsaSk7Ci8vICAgICAgICBmb3IoYXV0byBhOmFkaltpXSlwcmludGYoIiVkICIsYSk7Ci8vICAgICAgICBwcmludGYoIlxuIik7Ci8vICAgIH0KLy99CnZvaWQgc2hvdygpewogICAgZm9yKGludCBpPTA7aTxuO2krKykKICAgIHsKICAgICAgICBmb3IoaW50IGo9MDtqPG07aisrKQogICAgICAgICAgICBwcmludGYoIiVjIix4W2ldW2pdKTsKICAgICAgICBwcmludGYoIlxuIik7CiAgICB9Cn0KaW50IG1haW4oKXsKICAgIElPOwogICAgI2lmbmRlZiBPTkxJTkVfSlVER0UKICAgICAgIGZyZW9wZW4oImlucHV0LmluIiwgInIiLCBzdGRpbik7CiAgICAgICAvL2ZyZW9wZW4oIm91dHB1dC5pbiIsInciLHN0ZG91dCk7CiAgICAgICAvL2Nsb2NrX3QgdFN0YXJ0ID0gY2xvY2soKTsKICAgICAgIC8vY2Vycjw8Zml4ZWQ8PHNldHByZWNpc2lvbigxMCk8PCJUaW1lIFRha2VuOiAiPDwoZG91YmxlKShjbG9jaygpLSB0U3RhcnQpL0NMT0NLU19QRVJfU0VDPDxlbmRsOwogICAgI2VuZGlmCiAgICBzY2FuZigiJWQgJWQgJWQiLCZuLCZtLCZrKTsKICAgIGZvcihpbnQgaT0wO2k8bjtpKyspCiAgICAgICAgZm9yKGludCBqPTA7ajxtO2orKykKICAgICAgICAgICAgc2NhbmYoIiAlYyIsJnhbaV1bal0pOwoKICAgIGJmcygwLDEsNCwyKTsKICAgIGZvcihpbnQgaT0wO2k8bjtpKyspCiAgICB7CiAgICAgICAgZm9yKGludCBqPTA7ajxtO2orKykKICAgICAgICB7CiAgICAgICAgICAgIGlmKGs+MCkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgaWYoIXZpc1tpXVtqXSYmeFtpXVtqXT09Jy4nKWstLSxjb3V0PDwnWCc7CiAgICAgICAgICAgICAgICBlbHNlIGNvdXQ8PHhbaV1bal07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgZWxzZSBjb3V0PDx4W2ldW2pdOwogICAgICAgIH0KICAgICAgICBjb3V0PDxlbmRsOwogICAgfQogICAgcmV0dXJuIDA7Cn0K