#include <bits/stdc++.h>   using namespace std;   const long long oo = 0x7FFFFFFF;   int n;   char bad[105][105];   int len[105];   char st[105];   int leng;   char let[5], letter;   bool mai[105];   bool alterar[105];   void read() {     scanf( %d , &n);     char *c;     for (int i = 0; i < n; i++) {       scanf( %s , bad[i]);       c = bad[i];       while (*c) {         if ( A  <= *c && *c <=  Z ) *c = *c -  A  +  a ;         c++;       }       len[i] = c - bad[i];     }     scanf( %s%s , st, let);     leng = 0;     while (st[leng]) {       if ( a  <= st[leng] && st[leng] <=  z )         mai[leng] = false;       else         mai[leng] = true;       alterar[leng] = false;       if (mai[leng]) st[leng] = st[leng] -  A  +  a ;       leng++;     }     letter = let[0];   }   void comp(int k) {     int lasts = leng - len[k] + 1;     for (int i = 0; i < lasts; i++) {       bool igual = true;       for (int j = 0; j < len[k]; j++)         if (st[i + j] != bad[k][j]) {           igual = false;           break;         }       if (!igual) continue;       for (int j = 0; j < len[k]; j++) alterar[i + j] = true;     }   }   void process() {     for (int i = 0; i < n; i++) comp(i);     char prox =  a ;     if (letter ==  a ) prox =  b ;     for (int i = 0; i < leng; i++) {       if (alterar[i]) {         if (st[i] == letter)           st[i] = prox;         else           st[i] = letter;       }       if (mai[i]) st[i] = st[i] +  A  -  a ;     }     printf( %s n , st);   }   int main() {     read();     process();     return 0;   }   