#include <map>
#include <cstdio>
#include <iostream>
#include <string>
#include <cstring>
#include <algorithm>
using namespace std;
map<string,string>node;
string s,t;
int main()
{
while(cin>>s&&s!="XXXXXX")
{
t=s;
sort(s.begin(),s.end());// 利用sort对string里面的东西排序 减少全排列的问题
node.insert(make_pair(t,s));
}
while(cin>>s)
{
int flag=1;
if(s=="XXXXXX")
break;
sort(s.begin(),s.end());
map<string,string>::iterator it;
for(it=node.begin();it!=node.end();it++)
{
if(it->second==s)
{
flag=0;
cout<<it->first<<endl;
}
}
if(flag)
cout<<"NOT A VALID WORD"<<endl;
cout<<"******"<<endl;
}
return 0;
}