Wejście
Pierwszy wiersz zawiera długość ciągu $N$ $(1 \le N \le 100\,000)$.
Drugi wiersz zawiera $A_1, A_2, \ldots, A_N$ $(1 \le A_i \le 10^9)$.
Trzeci wiersz zawiera liczbę zapytań $M$ $(1 \le M \le 100\,000)$.
Każdy z kolejnych $M$ wierszy zawiera $a, b, c$. Wartości $a, b, c$ są używane do skonstruowania zapytania:
- $i = a \oplus \text{last\_ans}$
- $j = b \oplus \text{last\_ans}$
- $k = c \oplus \text{last\_ans}$
$\text{last\_ans}$ to odpowiedź na poprzednie zapytanie, początkowo $0$. Wyniki po XOR spełniają $1 \le i \le j \le n$ oraz $1 \le k \le 10^9$.
Wyjście
Dla każdego zapytania wypisz odpowiedź w osobnym wierszu.
Przykład
Wejście 1
5 5 1 2 3 4 3 2 4 1 6 6 6 1 5 2
Wyjście 1
2 0 3