#include<bits/stdc++.h>
using namespace std;
const int len = 1000001;
int parent[len] = {0};
int n, m;
void union_(int v1, int v2){
int p1 = parent[v1];
int p2 = parent[v2];
if (p1 != p2)
{
for (int i = 0;i < len;i ++)
{
if (parent[i] == p1)
{
parent[i] = p2;
}
}
}
}
int find(int v1)
{
return parent[v1];
}
bool isSame(int v1, int v2)
{
return find(v1) == find(v2);
}
int main()
{
for (int i = 0; i < len; i++){
parent[i] = i;
}
cin >> n >> m;
for (int i = 1;i <= m;i ++)
{
int z, x, y;
scanf("%d%d%d", &z, &x, &y);
if (z == 1)
{
union_(x, y);
}
else
{
if (isSame(x, y))
{
printf("Y\n");
}
else
{
printf("N\n");
}
}
}
return 0;
}