#include
#include
#include
using namespace std;
typedef long long ll;
ll power(ll a, ll b, ll x){
ll result = 1;
while(b > 0) {
if(result * a > x) {
result *= a;
break;
}
result *= a;
b--;
}
return result;
}
int main() {
ll n, m, k, x;
cin >> n >> m >> k >> x;
vector v;
string S;
cin >> S;
for(int i = 0; i < m; i++) {
string tmp;
cin >> tmp;
sort(tmp.begin(), tmp.end());
v.push_back(tmp);
}
vector result;
for(ll i = 0; i < m; i++) {
int j = 0;
ll k_power = power(k, m - i - 1, x);
ll sum = 0;
while(sum + k_power < x) {
sum += k_power;
j++;
}
x -= sum;
result.push_back(v[i][j]);
}
int idx = 0;
for(int i = 0; i < S.size(); i++) {
if(S[i] == '#') {
S[i] = result[idx];
idx++;
}
}
cout << S << endl;
return 0;
}