#include <bits/stdc++.h>
using namespace std;
int main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
int p1, p2, p3;
cin >> p1 >> p2 >> p3;
string s;
cin >> s;
string out;
int n = (int)s.size();
for (int i = 0; i < n; i++) {
bool expandable = false;
if (s[i] == '-' && i > 0 && i + 1 < n) {
char l = s[i - 1], r = s[i + 1];
bool sameKind = (islower(l) && islower(r)) || (isdigit(l) && isdigit(r));
expandable = sameKind && r > l;
}
if (!expandable) {
// 不是可以展开的减号,原样输出
out += s[i];
continue;
}
// 减号两端的字符不变,只填充中间的字符
string mid;
for (char c = s[i - 1] + 1; c < s[i + 1]; c++) {
char ch = c;
if (p1 == 3) {
ch = '*';
} else if (p1 == 2 && isalpha(c)) {
ch = (char)toupper(c);
}
for (int k = 0; k < p2; k++) mid += ch;
}
if (p3 == 2) reverse(mid.begin(), mid.end());
out += mid;
}
cout << out << "\n";
return 0;
}