#include "islands.h"
#include <bits/stdc++.h>
#include <variant>
#include <vector>
using namespace std;
class dsu {
public:
vector<int> p;
int n;
dsu(int _n) : n(_n) {
p.resize(n);
iota(p.begin(), p.end(), 0);
}
int get(int x) {
if (p[x] == x) {
return x;
}
return (p[x] = get(p[x]));
}
bool unite(int x, int y) {
x = get(x);
y = get(y);
if (x != y) {
p[y] = x;
return true;
}
return false;
}
};
variant<bool, vector<int>> find_journey(int n, int m, vector<int> u, vector<int> v) {
vector<vector<int>> g(n);
for (int i = 0; i < m; i++) {
g[u[i]].push_back(v[i]);
g[v[i]].push_back(u[i]);
}
dsu ds(n);
bool cyc = false;
for (int i = 0; i < m; i += 2) {
if (!ds.unite(u[i], v[i])) {
cyc = true;
}
}
if (!cyc) {
return true;
}
return false;
}