#include <cstdio> int l,c,h; const int Q=1007; char init[Q][Q],a[Q][Q],b[Q][Q]; int lin[Q],col[Q]; int min(int a, int b) { return a<b?a:b; } void show(char mat[Q][Q]) { for(int i=1; i<=20; i++) { puts(mat[i]+1); } } int main() { // freopen("data.in","r",stdin); // freopen("data.out","w",stdout); scanf("%d%d%d\n",&l,&c,&h); for(int i=1; i<=l; i++) { gets(init[i]+1); } for(int i=1; i<=h; i++) gets(a[i]+1); for(int i=1; i<=h; i++) gets(b[i]+1); // show(a); for(int i=1; i<=c; i++) { for(int j=h; j>0; j--) { if(a[j][i]=='#') col[i]++; else break; } } for(int i=1; i<=l; i++) { for(int j=h; j>0; j--) { if(b[j][i]=='#') lin[i]++; else break; } } for(int i=1; i<=l; i++) { for(int j=1; j<=c; j++) { if(init[i][j]=='.') printf("."); else printf("%d",min(lin[l-i+1],col[j])); } printf("\n"); } return 0; }