#include <cstdio>
#include <vector>
char first[1000][1004];
char second[1000][1004];
char result[1000][1004];

int positions[4][4];
int main() {
	while ( 1 ) {
		int lines, length;
		char falcon, tmp;
		int X1, Y1, X2, Y2;
		bool wasfirst=false;
		bool wassecond=false;
		scanf( "%d%d '%c'\n",&lines, &length, &falcon);
		if(lines==0 || length==0){
			return 0;
		}
		for(int i=0;i<lines;i++){
			gets(first[i]);
			for(int j=0;j<length;j++){
				if(first[i][j]==falcon && wasfirst==false){
					wasfirst=true;
					X1=j;
					Y1=i;
				}
			}
		}
			getc(stdin);
		for(int i=0;i<lines;i++){
			gets(second[i]);
			for(int j=0;j<length;j++){
				if(second[i][j]==falcon && wassecond==false){
					wassecond=true;
					X2=j;
					Y2=i;
				}
			}
		}
		
		for(int i=0;i<lines;i++){
			for(int j=0;j<length;j++){
				if(first[i][j]!=falcon){
					result[i][j]=first[i][j];
				}
				else{
					result[i][j]=second[i][j];				
				}
			}
		}
		int posunX=X2-X1;
		int posunY=Y2-Y1;
		
		for(int i=0;i<lines;i++){
			for(int j=0;j<length;j++){
				if(second[i][j]==falcon){
					if(i+posunY<lines && i+posunY>=0 && j+posunX<length && j+posunX>=0){
						result[i+posunY][j+posunX]=falcon;
					}
				}
			}
		}
		
		
		for(int i=0;i<lines;i++){
			for(int j=0;j<length;j++){
				printf("%c", result[i][j]);
			}
			printf("\n");
		}
			printf("\n");
		
		
	}
	return 0;
}