#include<bits/stdc++.h>
using namespace std;
int f[501];
int n;
string s,ss[1001];
int dfs(int x) {
if(x==s.size()){
return f[x]=1;
}
if(f[x]!=-1)
{
return f[x];
}
for(int i=1;i<=n;i++){
if(ss[i]==s.substr(x,ss[i].size())){
if(dfs(x+ss[i].size())==1)return f[x]=1;
}
}
return f[x]=0;
}
int main() {
cin>>s;
cin>>n;
memset(f,-1,sizeof(f));
for(int i=1;i<=n;i++){
cin>>ss[i];
}
if(dfs(0)==1) cout<<"Yes";
else cout<<"No";
return 0;
}