#include<bits/stdc++.h>
#define re register
#define li inline
using namespace std;
int n,ans=99;
string x,y,a[10],b[10];
li bool pd(re string z)
{
if(y.size()!=z.size()) return 0;
for(re int i=0;i<z.size();i++)
if(y[i]!=z[i]) return 0;
return 1;
}
li void dfs(re int last,re int dep,re string z)
{
if(dep==10) return ;
if(pd(z))
{
ans=min(ans,dep);
return ;
}
for(re int i=1;i<=n;i++)
{
if(i==last) continue;
int p=z.find(a[i]);
if(p==string::npos) continue;
string s=z;
dfs(i,dep+1,s.replace(p,a[i].size(),b[i]));
}
}
int main()
{
cin>>x>>y;
while(cin>>a[++n]>>b[n+1]);
dfs(0,0,x);
if(ans!=99) putchar(ans+'0');
else printf("NO ANSWER!");
return 0;
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KI2RlZmluZSByZSByZWdpc3RlcgojZGVmaW5lIGxpIGlubGluZQp1c2luZyBuYW1lc3BhY2Ugc3RkOwppbnQgbixhbnM9OTk7CnN0cmluZyB4LHksYVsxMF0sYlsxMF07CmxpIGJvb2wgcGQocmUgc3RyaW5nIHopCnsKCWlmKHkuc2l6ZSgpIT16LnNpemUoKSkgcmV0dXJuIDA7Cglmb3IocmUgaW50IGk9MDtpPHouc2l6ZSgpO2krKykKCQlpZih5W2ldIT16W2ldKSByZXR1cm4gMDsKCXJldHVybiAxOwp9CmxpIHZvaWQgZGZzKHJlIGludCBsYXN0LHJlIGludCBkZXAscmUgc3RyaW5nIHopCnsKCWlmKGRlcD09MTApIHJldHVybiA7CglpZihwZCh6KSkKCXsKCQlhbnM9bWluKGFucyxkZXApOwoJCXJldHVybiA7Cgl9Cglmb3IocmUgaW50IGk9MTtpPD1uO2krKykKCXsKCQlpZihpPT1sYXN0KSBjb250aW51ZTsKCQlpbnQgcD16LmZpbmQoYVtpXSk7CgkJaWYocD09c3RyaW5nOjpucG9zKSBjb250aW51ZTsKCQlzdHJpbmcgcz16OwoJCWRmcyhpLGRlcCsxLHMucmVwbGFjZShwLGFbaV0uc2l6ZSgpLGJbaV0pKTsKCX0KfQppbnQgbWFpbigpCnsKCWNpbj4+eD4+eTsKCXdoaWxlKGNpbj4+YVsrK25dPj5iW24rMV0pOwoJZGZzKDAsMCx4KTsKCWlmKGFucyE9OTkpIHB1dGNoYXIoYW5zKycwJyk7CgllbHNlIHByaW50ZigiTk8gQU5TV0VSISIpOwoJcmV0dXJuIDA7Cn0=