#include <bits/stdc++.h>
using namespace std;
int n,m;
int k,q;
int k1,q1;
int father[10086];
struct Sb{
int id;
string name;
}sb[10086];
int find(int q){
if(father[q]==q) return q;
return father[q]=find(father[q]);
}
void bing(int x,int y)
{
int a1=find(x);
int a2=find(y);
father[a2]=a1;
}
int main(){
cin>>n>>m;
for(int i=1;i<=n;i++) father[i]=i;
for(int i=1;i<=n;i++){
cin>>sb[i].name;
sb[i].id=i;
}
for(int i=1;i<=n;i++) father[i]=i;
for(int i=1;i<=m;i++){
string a,b;
cin>>a>>b;
for(int j=1;j<=m;j++){
if(a==sb[j].name) k=sb[j].id;
if(b==sb[j].name) q=sb[j].id;
}
if(k!=q) bing(k,q);
}
int p;
cin>>p;
for(int i=1;i<=p;i++){
string a,b;
cin>>a>>b;
for(int j=1;j<=m;j++){
if(a==sb[j].name) k1=sb[j].id;
if(b==sb[j].name) q1=sb[j].id;
}
if(find(k1)==find(q1)) cout<<"Yes."<<endl;
if(find(k1)!=find(q1)) cout<<"No."<<endl;
}
return 0;
}