#include "islands.h"
#include <bits/stdc++.h>
#include <variant>
#include <vector>
using namespace std;
variant<bool, vector<int>> find_journey(int n, int m, vector<int> u, vector<int> v) {
int cnt = 0;
for (int i = 0; i < m; i++) {
if (u[i] == 0) {
cnt++;
}
}
if (cnt >= 2) {
vector<int> ans;
vector<int> zz;
for (int i = 0; i < m; i++) {
if (u[i] == 0) {
zz.push_back(i);
}
}
ans.push_back(zz[0]);
ans.push_back(zz[0] ^ 1);
ans.push_back(zz[1]);
ans.push_back(zz[1] ^ 1);
ans.push_back(zz[0] ^ 1);
ans.push_back(zz[0]);
ans.push_back(zz[1] ^ 1);
ans.push_back(zz[1]);
return ans;
}
if (cnt == 1) {
int vv = -1;
for (int i = 0; i < m; i++) {
if (u[i] == 0) {
vv = i;
break;
}
}
vector<int> zz;
for (int i = 0; i < m; i++) {
if (u[i] == v[vv] && v[i] != 0) {
zz.push_back(i);
}
}
vector<int> ans;
if (zz.size() >= 2) {
ans.push_back(vv);
ans.push_back(zz[0]);
ans.push_back(zz[0] ^ 1);
ans.push_back(zz[1]);
ans.push_back(zz[1] ^ 1);
ans.push_back(zz[0] ^ 1);
ans.push_back(zz[0]);
ans.push_back(zz[1] ^ 1);
ans.push_back(zz[1]);
ans.push_back(vv);
return ans;
}
return false;
}
return false;
}