#include<iostream>
#include<vector>
#include<cstring>

using namespace std;
typedef int var;

//ifstream cin("debug.in");
//ofstream cout("debug.out");

char S1[1000], S2[1000];
var i1, i2;

var size;
char rez[1000][1000];

char MAP[] = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F'};



void parse_u() {

	var nr = 0;

	while(S2[i2] != ' ') {
		nr = nr*10 + S2[i2] - '0';
		i2++;
	}

	size++;

	for(var t=0; t<4; t++) {
		var rest = nr % 256;
		char a = MAP[rest/16],
			 b = MAP[rest%16];
		rez[size][2*t] = a;
		rez[size][2*t+1] = b;

		nr /= 256;
	}
}

void parse_x() {
    i2 += 2;
    size++;

    char str[8];
    var sz = 0;
    while(S2[i2] != ' ') {
        str[sz++] = S2[i2++];
    }
    str[sz] = 0;

    for(var i=sz-1; i>=0; i--) {
        str[i+8-sz] = str[i];
    }
    for(var i=0; i<8-sz; i++) {
        str[i] = '0';
    }

    for(var t=0; t<4; t++) {
        rez[size][2*(3-t)] = str[2*t];
        rez[size][2*(3-t)+1] = str[2*t+1];
    }
}

void parse_c() {
    char c = S2[i2];

    size++;
    rez[size][0] = MAP[c/16];
    rez[size][1] = MAP[c%16];
}

void parse_s() {
    size++;
    var t=0;
    while(S2[i2] != ' ') {
        char c = S2[i2];
        rez[size][2*t] = MAP[c/16];
        rez[size][2*t+1] = MAP[c%16];
        i2++;
        t++;
    }
}

char buff[256];

int main() {
	cin.getline(S1, 2000);
	cin.getline(S2, 2000);

	strcat(S1, " ");
	strcat(S2, " ");

	fill(buff, buff+256, '0');

	for(; S2[i2]; i1++, i2++) {
		if(S1[i1] == '%') {
			i1++;
			if(S1[i1] == 'u') {
				parse_u();
				i2--;
			} else if(S1[i1] == 'x') {
				parse_x();
				i2--;
			} else if(S1[i1] == 's') {
				parse_s();
				i2--;
			} else {
				parse_c();
			}
		}
	}

	var a = 0;

	while(S1[i1]) {
        while(S1[i1] && !isdigit(S1[i1]))
            i1++;
        var nr = 0;
        while(isdigit(S1[i1])) {
            nr = nr * 10 + S1[i1] - '0';
            i1++;
        }
        a++;
        for(var j=0; rez[a][j]; j++) {
            buff[2*nr+j] = rez[a][j];
        }
	}

	for(var i=0; i<256; i++) {
        cout<<buff[i];
	}
	cout<<endl;

	return 0;
}