#include <iostream>
#include <string.h>
#include <string>
#include <queue>
using namespace std;
struct Node{
string a,b;
}rule[10];
string s1,s2;
queue<pair<string,int> > que;
int main(){
cin.tie(0),cout.tie(0),ios::sync_with_stdio(false);
cin>>s1>>s2;
int ii=1;
while(cin>>rule[ii].a>>rule[ii].b)++ii;
que.push(pair<string,int>(s1,0));
--ii;
while(!que.empty()){
string s=que.front().first;
int step=que.front().second;
que.pop();
if(step>10){
cout<<"NO ANSWER!"<<"\n";
break;
}
if(s==s2&&step<=10){
cout<<step<<"\n";
break;
}
for(int i=1;i<=ii;++i){
int p=0;
while(1){
p=s.find(rule[i].a,p);
if(p==s.npos)break;
string ss=s;
ss.replace(p,p+rule[i].a.length(),rule[i].b);
++p;
que.push(pair<string,int>(ss,step+1));
}
}
}
return 0;
}