#include <fstream>
#define DIM 100010
using namespace std;
ifstream fin("disjoint.in");
ofstream fout("disjoint.out");
int t[DIM];
int x, y, n, m, i, rx, ry, tip;
int rad (int x) {
int y = x, r;
while (t[x] > x)
x = t[x];
r = x;
x = y;
while (t[x] > 0) {
y = t[x];
t[x] = r;
x = y;
}
return r;
}
int main() {
fin>>n>>m;
for (i=1;i<=n;i++)
t[i] = -1;
for (i=1;i<=m;i++) {
fin>>tip>>x>>y;
rx = rad(x);
ry = rad(y);
if (tip == 1) {
if (rx!=ry) {
if (t[rx] < t[ry]) {
t[rx] += t[ry];
t[ry] = rx;
} else {
t[ry] += t[rx];
t[rx] = ry;
}
}
} else
fout << ((rx == ry) ? "DA\n" : "NU\n");
}
return 0;
}