#include<bits/stdc++.h>
using namespace std;
int n,m,d,cnt;
bool mp[1010][1010];
bool used[1010][1010];
struct H{
int x,y;
}a[1010];
int main()
{
cin>>n>>m>>d;
for(int i=1;i<=n;i++)
{
for(int j=1;j<=m;j++)
{
char c;
cin>>c;
if(c=='#') mp[i][j]=1;
else if(c=='H')
{
a[++cnt].x=i,a[cnt].y=j;
}
}
}
for(int i=1;i<=cnt;i++)
{
int u=a[i].x,v=a[i].y;
used[u][v]=1;
for(int j=1;j<=d;j++)
{
if(u+j>n||mp[u+j][v]) break;
used[u+j][v]=1;
}
for(int j=1;j<=d;j++)
{
if(u-j<1||mp[u-j][v]) break;
used[u-j][v]=1;
}
for(int j=1;j<=d;j++)
{
if(v+j>m||mp[u][v+j]) break;
used[u][v+j]=1;
}
for(int j=1;j<=d;j++)
{
if(v-j<1||mp[u][v-j]) break;
used[u][v-j]=1;
}
}
int ans=0;
for(int i=1;i<=n;i++)
{
for(int j=1;j<=m;j++)
{
cout<<used[i][j];
if(used[i][j]) ans++;
}
cout<<endl;
}
cout<<ans;
return 0;
}