#include<bits/stdc++.h>
using namespace std;
int f[100009],n,m,x[100009],y[100009],z[100009];
int find(int x)
{
if(f[x]==x) return x;
else f[x]=find(f[x]);
return f[x];
}
void work1(int x,int y)
{
f[find(y)]=find(x);
}
void work2(int x,int y)
{
if(find(x)==find(y)) cout<<"Y\n";
else cout<<"N\n";
}
int main()
{
scanf("%d%d",&n,&m);
for(int i=1;i<=m;++i)
{
scanf("%d",&z[i]);
scanf("%d%d",&x[i],&y[i]);
f[i]=i;
}
for(int i=1;i<=m;++i)
{
if(z[i]==1) work1(x[i],y[i]);
else work2(x[i],y[i]);
}
return 0;
}