#include<algorithm>
#include<bitset>
#include<cmath>
#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<deque>
#include<fstream>
#include<iostream>
#include<map>
#include<queue>
#include<set>
#include<stack>
#include<utility>
#include<vector>

using namespace std;

typedef long long int lld;
typedef pair<int,int> PII;

const int INF = (1<<31)-1;
const lld LINF = (1LL<<63)-1;

const int NMAX = 100000+5;
const int MMAX = 100000+5;
const int KMAX = 100000+5;
const int PMAX = 100000+5;
const int LMAX = 100000+5;
const int VMAX = 100000+5;

int N,i,j,var,ok,width,precision;
char c,*p,*r,op[105],str[30][105];
char text[105];
deque<int> S;

int main()
{
    //freopen("input.txt","r",stdin);
    //freopen("output.txt","w",stdout);

    scanf("%d",&N);

    for(i=1; i<=N; i++)
    {
        scanf("%s",op);
        var=op[0]-'a';
        for(p=op+2,j=0; *p; p++,j++)
            str[var][j]=*p;
        str[var][j]=0;
    }
    scanf("%c",&c);
    fgets(text,105,stdin);
    N=strlen(text);
    for(p=text; *p!='\n'; p++)
        if(*p==',') ok++;
    for(p=text+N-2,i=0; p!=text && i!=ok; p--)
    {
        if(*p>='a' && *p<='z') S.push_back(*p-'a');
        else i++;
    }
    for(p=text; *p!=','; p++)
        if(*p=='%')
        {
            p++;
            if(*p=='s') printf("%s",str[S.back()]);
            else if(*p>='1' && *p<='5')
            {
                width=*p-'0';
                N=strlen(str[S.back()]);
                for(i=1; i<=width-N; i++) printf(" ");
                printf("%s",str[S.back()]);
                p++;
            }
            else if(*p=='.')
            {
                p++;
                precision=*p-'0';
                for(r=str[S.back()]; *r!='.'; r++)
                    printf("%c",*r);
                printf("%c",*r);
                r++;
                for(i=1; i<=precision-1; i++,r++)
                {
                    if(*r) printf("%c",*r);
                    else printf("0");
                }
                if(*r)
                {
                    var=*r-'0';
                    r++;
                    if(*r && *r>='5') var++;
                    printf("%d",var);
                }
                else printf("0");
                p++;
            }
            S.pop_back();
        }
        else printf("%c",*p);

    return 0;
}