#include<bits/stdc++.h>
using namespace std;
long find(long a[],long i)
{
if(a[i]!=i)
return i=a[i];
return i;
}
int main()
{
long n,q;
cin>>n>>q;
long a[n];
for(long i=0;i<n;i++) a[i]=i;
while(q--)
{
int t;
long u,v;
cin>>t>>u>>v;
u--;
v--;
if(t==1)
{
long pu=find(a,u);
long pv=find(a,v);
if(pu!=pv)
{
a[pv]=pu;
}
}
else
{
long pu=find(a,u);
long pv=find(a,v);
// cout<<pu<<" "<<pv<<"\n";
if(pu==pv)
cout<<"Yes\n";
else
cout<<"No\n";
}
}
return 0;
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmxvbmcgZmluZChsb25nIGFbXSxsb25nIGkpCnsKCWlmKGFbaV0hPWkpCgkJcmV0dXJuIGk9YVtpXTsKCXJldHVybiBpOwp9CgppbnQgbWFpbigpCnsKCWxvbmcgbixxOwoJY2luPj5uPj5xOwoJbG9uZyBhW25dOwoJZm9yKGxvbmcgaT0wO2k8bjtpKyspIGFbaV09aTsKCgl3aGlsZShxLS0pCgl7CgkJaW50IHQ7CgkJbG9uZyB1LHY7CgkJY2luPj50Pj51Pj52OwoJCXUtLTsKCQl2LS07CgkJaWYodD09MSkKCQl7CgkJCWxvbmcgcHU9ZmluZChhLHUpOwoJCQlsb25nIHB2PWZpbmQoYSx2KTsKCQkJaWYocHUhPXB2KQoJCQl7CgkJCQlhW3B2XT1wdTsKCQkJfQoJCX0KCQllbHNlCgkJewoJCQlsb25nIHB1PWZpbmQoYSx1KTsKCQkJbG9uZyBwdj1maW5kKGEsdik7CgkJCS8vIGNvdXQ8PHB1PDwiICI8PHB2PDwiXG4iOwoJCQlpZihwdT09cHYpCgkJCQljb3V0PDwiWWVzXG4iOwoJCQllbHNlCgkJCQljb3V0PDwiTm9cbiI7CgkJfQoJfQoJcmV0dXJuIDA7Cn0=