#include<stdio.h>
#include<stdlib.h>
#include<string.h>

int main()
{
	int qqq = 0;
	while(1)
	{
	int m, n, i, j;
	int uf = scanf("%d %d ", &m, &n);
	if (m ==0 && n == 0) break;

	if (qqq != 0) printf("\n");
	qqq = 1;

	getchar();
	char c = getchar();
	getchar();
	getchar();

	char first[m][n];
	char second[m][n];
	int flag = 0;
	int x, y;

	for (i = 0; i < m; i++)
	{
		for (j = 0; j < n; j++)
		{
			char t = getchar();
			if (t == c){
			 first[i][j] = 0;
				if (flag == 0)
				{
					flag = 1;
					x = j;
					y = i;
				}
			}
			else first[i][j] = t;
		}
		getchar();
	}
	getchar();
	flag = 0;
	for (i = 0; i < m; i++)
	{
		for (j = 0; j < n; j++)
		{
			char t = getchar();
			if (t == c) {
				second[i][j] = 0;
				if (flag == 0)
				{
					flag = 1;
					x = j - x;
					y = i - y;
				}
			}
			else second[i][j] = t;
		}
		getchar();
	}
	getchar();



	for (i = 0; i < m; i++)
	{
		for (j = 0; j < n; j++)
		{
			first[i][j] = first[i][j] | second[i][j];
		}
	}


	for (i = 0; i < m; i++)
	{
		/*if (i != 0) printf("\n");*/
		for (j = 0; j < n; j++)
		{
			/*if (j != 0) printf("\n");*/
			if (i+y < m && j+x < n)
			{
				if (second[i][j] == 0) first[i+y][j+x] = c;
			}
			printf("%c",first[i][j]);
		}
		printf("\n");
	}
	/*printf("\n");*/

	



	}
return 0;
}