rt
i64 qry(int a, int b, int c, int d, int l, int r, int ql, int qr) {
if (!(val[a] ^ val[b] ^ val[c] ^ val[d])) return -1;
if (l == r) return l; int mid = (l + r) >> 1; i64 ret = -1;
if (ql <= mid) ret = qry(ls[a], ls[b], ls[c], ls[d], l, mid, ql, qr);
if (ret != -1) return ret;
if (qr > mid) ret = qry(rs[a], rs[b], rs[c], rs[d], mid + 1, r, ql, qr);
return ret;
}