#include <cstdio>
#include <map>
#include <set>
#include <algorithm>
#include <iostream>
#include <cstdlib>
#include <sstream>
#include <cmath>
#include <map>
#include <vector>
#include <queue>
using namespace std;
#define FOR(i, x) for (int i = 0; i < x; i++)
#define FORI(i,a, x) for (int i = a; i < x; i++)
#define ALL(x) (x).begin(), (x).end()
#define FORE(i, x) for (__typeof__((x).begin()) i = (x).begin(); i != (x).end(); i++)
#define SZ(x) ((int) (x).size())
#define EPS 1E-9
#define MAX 30
#define GETNUM(n) { \
int sgn=1; \
n=0; \
if(*start=='-') { sgn=-1; start++; } \
while (*start>='0' && *start<='9') { \
n*=10; n+=*start-'0'; \
start++; \
} \
n *= sgn; \
}
#define GETCHAR(c) { \
c=*start; \
start++; \
}
int main( )
{
#ifndef ONLINE_JUDGE
freopen ( "in/2943.in" ,"r" ,stdin ) ;
freopen ( "out/2943.out" ,"w" ,stdout ) ;
#endif
int N;
map< string,string> dict;
string str, w;
getline( cin ,str) ;
sscanf ( str.c_str ( ) ,"%d" ,& N) ;
FOR( i,N)
{
getline( cin ,w) ;
str= w;
if ( SZ( str) > 2 ) sort( str.begin ( ) + 1 ,str.end ( ) - 1 ) ;
dict.insert ( pair< string,string> ( str,w) ) ;
}
while ( getline( cin ,str) )
{
bool first = true ;
istringstream sstr( str) ;
while ( sstr >> str)
{
if ( SZ( str) > 2 ) sort( str.begin ( ) + 1 ,str.end ( ) - 1 ) ;
if ( ! first) cout << " " ;
cout << dict[ str] ;
first = false ;
}
cout << endl;
}
return 0 ;
}
I2luY2x1ZGUgPGNzdGRpbz4KI2luY2x1ZGUgPG1hcD4KI2luY2x1ZGUgPHNldD4KI2luY2x1ZGUgPGFsZ29yaXRobT4KI2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Y3N0ZGxpYj4KI2luY2x1ZGUgPHNzdHJlYW0+CiNpbmNsdWRlIDxjbWF0aD4KI2luY2x1ZGUgPG1hcD4KI2luY2x1ZGUgPHZlY3Rvcj4KI2luY2x1ZGUgPHF1ZXVlPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwojZGVmaW5lIEZPUihpLCB4KSBmb3IgKGludCBpID0gMDsgaSA8IHg7IGkrKykKI2RlZmluZSBGT1JJKGksYSwgeCkgZm9yIChpbnQgaSA9IGE7IGkgPCB4OyBpKyspCiNkZWZpbmUgQUxMKHgpICh4KS5iZWdpbigpLCAoeCkuZW5kKCkKI2RlZmluZSBGT1JFKGksIHgpIGZvciAoX190eXBlb2ZfXygoeCkuYmVnaW4oKSkgaSA9ICh4KS5iZWdpbigpOyBpICE9ICh4KS5lbmQoKTsgaSsrKQojZGVmaW5lIFNaKHgpICgoaW50KSAoeCkuc2l6ZSgpKQojZGVmaW5lIEVQUyAxRS05CiNkZWZpbmUgTUFYIDMwCiNkZWZpbmUgR0VUTlVNKG4pIHsgXAppbnQgc2duPTE7IFwKbj0wOyBcCmlmKCpzdGFydD09Jy0nKSB7IHNnbj0tMTsgc3RhcnQrKzsgfSBcCndoaWxlICgqc3RhcnQ+PScwJyAmJiAqc3RhcnQ8PSc5JykgeyBcCm4qPTEwOyBuKz0qc3RhcnQtJzAnOyBcCnN0YXJ0Kys7IFwKfSBcCm4gKj0gc2duOyBcCn0KI2RlZmluZSBHRVRDSEFSKGMpIHsgXApjPSpzdGFydDsgXApzdGFydCsrOyBcCn0KaW50IG1haW4oKQp7CiNpZm5kZWYgT05MSU5FX0pVREdFCmZyZW9wZW4oImluLzI5NDMuaW4iLCJyIixzdGRpbik7CmZyZW9wZW4oIm91dC8yOTQzLm91dCIsInciLHN0ZG91dCk7CiNlbmRpZgppbnQgTjsKbWFwPHN0cmluZyxzdHJpbmc+IGRpY3Q7CnN0cmluZyBzdHIsIHc7CmdldGxpbmUoY2luLHN0cik7CnNzY2FuZihzdHIuY19zdHIoKSwiJWQiLCZOKTsKRk9SKGksTikKewpnZXRsaW5lKGNpbix3KTsKc3RyPXc7CmlmKFNaKHN0cik+Mikgc29ydChzdHIuYmVnaW4oKSsxLHN0ci5lbmQoKS0xKTsKZGljdC5pbnNlcnQocGFpcjxzdHJpbmcsc3RyaW5nPihzdHIsdykpOwp9CndoaWxlKGdldGxpbmUoY2luLHN0cikpCnsKYm9vbCBmaXJzdCA9IHRydWU7CmlzdHJpbmdzdHJlYW0gc3N0cihzdHIpOwp3aGlsZShzc3RyID4+IHN0cikKewppZihTWihzdHIpPjIpIHNvcnQoc3RyLmJlZ2luKCkrMSxzdHIuZW5kKCktMSk7CmlmKCFmaXJzdCkgY291dCA8PCAiICI7CmNvdXQgPDwgZGljdFtzdHJdOwpmaXJzdCA9IGZhbHNlOwp9CmNvdXQgPDwgZW5kbDsKfQpyZXR1cm4gMDsKfQ==
stdin
MjYKYW5kCmJlYXV0eQpidXQKY2hhbmdpbmcKZmFjZQpmYWxzZQpnbGFkCmdyYWNlCmhvdwppbgpsb3ZlCmxvdmVkCm1hbgptYW55Cm1vbWVudHMKb2YKb25lCm9yCnBpbGdyaW0Kc29ycm93cwpzb3VsCnRoZQp0cnVlCndpdGgKeW91CnlvdXIKaG93IG1uYXkgbG9ldmQgeXVvciBtb2VtdG5zIG9mIGdhbGQgZ2NyYWUKYW5kIGx2ZW9kIHl1b3IgYmFldHV5IHd0aWggbHZvZSBmbGFzZSBvciB0cnVlCmJ1dCBvbmUgbWFuIGxlb3ZkIHRoZSBwbGlnaXJtIHN1b2wgaW4geW91CmFuZCBsZXZvZCB0aGUgc29yd29ycyBvZiB5dW9yIGNobmdhbmlnIGZjYWU=
26
and
beauty
but
changing
face
false
glad
grace
how
in
love
loved
man
many
moments
of
one
or
pilgrim
sorrows
soul
the
true
with
you
your
how mnay loevd yuor moemtns of gald gcrae
and lveod yuor baetuy wtih lvoe flase or true
but one man leovd the pligirm suol in you
and levod the sorwors of yuor chnganig fcae