#include #include #include using namespace std; using namespace atcoder; using mint = modint998244353; #define rep(i,n) for (int i = 0; i < (n); ++i) #define Inf32 1000000001 #define Inf64 4000000000000000001 #define sq 1300 int main(){ int N,M; cin>>N>>M; vector p(N); rep(i,N){ cin>>p[i]; p[i]--; } vector> E(N); rep(i,M){ int u,v; scanf("%d %d",&u,&v); u--,v--; E[u].push_back(v); E[v].push_back(u); } vector big(N); rep(i,N){ if(E[i].size()>sq)big[i] = 1; } vector> nE(N); rep(i,N){ rep(j,E[i].size()){ if(big[E[i][j]])nE[i].push_back(E[i][j]); } } vector> mp(N); rep(i,N){ rep(j,nE[i].size()){ int to = nE[i][j]; mp[to][p[i]]++; } } int q; cin>>q; rep(_,q){ int a,b; scanf("%d %d",&a,&b); a--,b--; if(p[a]==p[b]){ cout<<"No"<