#include <iostream>
#include <cstring>
#include <cmath>

using namespace std;

int poz(char k, char cuv[100][100], int n)
{
    int i;
    for(i=0;i<n;i++)
        if(cuv[i][0]==k)
            return i;
    return -1;
}
float round(float x, int c)
{
    int i=0, j;
    while(c!=0)
    {
        x=x*10;
        c--;
        i++;
    }
    if(x*10-int(x)*10>=5)x++;
    for(j=0;j<i;j++)
        x=x/10;
    return x;
}

int main()
{
    char s[100], cuv[100][100], a[100], *p, q, aux[100], sir[100], arg[100];
    int n, m=0, i, m1=0, nr, nr1=0, ok, j;
    float len;
    cin>>n;
    cin.get();
    for(i=1;i<=n;i++)
    {
        cin.get(a, 100);
        q=a[0];
        strcpy(aux, a+2);
        strcpy(a, aux);
        strcpy(cuv[n+i], a);
        cuv[i][0]= q;
        cin.get();
    }
    cin.get(s, 100);
    p=strtok(s, ",");
    strcpy(sir, p);
    p=strtok(NULL, ",");
    while(p)
    {
        arg[m]=p[0];
        m++;
        p=strtok(NULL, ",");
    }
    p=strtok(s, " ");
    while(p)
    {
        strcpy(a, p);
        if(a[0]!='%')
            cout<<a<<" ";
        else
        {
            if(a[1]=='s')
                {
                    cout<<cuv[poz(arg[m1], cuv, n)]<<" ";
                    m1++;
                }
            else
            {
                if(strchr(a, 'd'))
                {
                    len=strlen(cuv[poz(arg[m1], cuv, n)]);
                    strcpy(aux, a+1);
                    strcpy(a, aux);
                    nr1=0;
                    for(i=0;i<strlen(a)-1;i++)
                    {
                        nr=a[i]-'1';
                        nr1=nr1*10+nr;
                    }
                    while(nr1>len)
                    {
                        cout<<" ";
                        nr1--;
                    }
                    cout<<cuv[poz(arg[m1], cuv, n)]<<" ";
                }
                else
                {
                    strcpy(aux, a+1);
                    strcpy(a, aux);
                    nr1=0;
                    for(i=0;i<strlen(a)-1;i++)
                    {
                        nr=a[i]-'1';
                        nr1=nr1*10+nr;
                    }
                    len=0;
                    for(i=0;i<strlen(cuv[poz(arg[m1], cuv, n)])-1;i++)
                    {
                        if(cuv[poz(arg[m1], cuv, n)][i]=='.')
                            ok=1;
                        nr=cuv[poz(arg[m1], cuv, n)][i]-'1';
                        len=len*10+nr;
                        if(ok==1)
                            j++;
                        len=len/pow(10, j);
                    }
                    cout<<round(len, nr1)<<" ";
                }
            }
        }
    }
    p=strtok(NULL, " ");
    return 0;
}