#include #include using namespace std; using namespace atcoder; int main() { int n,q; cin>>n>>q; dsu uf(n+1); for(int i=1; i<=n; ++i) { int p; cin>>p; if(p==-1) continue; uf.merge(i,p); } while(q--) { int a,b; cin>>a>>b; cout<<(uf.same(a,b)?"Yes":"No")<<'\n'; } }