Nazwijmy tablicę liczb całkowitych $[b_1, b_2, \dots, b_m]$ dobrą, jeśli możemy podzielić wszystkie jej elementy na 2 niepuste grupy, takie że bitowe AND elementów w pierwszej grupie jest równe bitowemu OR elementów w drugiej grupie. Na przykład tablica $[1, 7, 3, 11]$ jest dobra, ponieważ możemy ją podzielić na $[1, 3]$ oraz $[7, 11]$, gdzie $1 \text{ OR } 3 = 3$, a $7 \text{ AND } 11 = 3$.
Dana jest tablica $[a_1, a_2, \dots, a_n]$ i należy odpowiedzieć na $q$ zapytań postaci: czy podtablica $[a_{l_i}, a_{l_i+1}, \dots, a_{r_i}]$ jest dobra?
Wejście
Pierwsza linia wejścia zawiera dwie liczby całkowite $n, q$ ($1 \le n \le 10^5$, $1 \le q \le 10^5$) — długość tablicy oraz liczbę zapytań.
Druga linia wejścia zawiera $n$ liczb całkowitych $a_1, a_2, \dots, a_n$ ($0 \le a_i \le 2^{30} - 1$) — elementy tablicy.
Każda z kolejnych $q$ linii zawiera 2 liczby całkowite $l_i, r_i$ ($1 \le l_i \le r_i \le n$) — opisujące $i$-te zapytanie.
Wyjście
Dla każdego zapytania wypisz YES, jeśli odpowiadająca mu podtablica jest dobra, oraz NO, jeśli nie jest.
Przykład
Wejście 1
5 15 0 1 1 3 2 1 1 1 2 1 3 1 4 1 5 2 2 2 3 2 4 2 5 3 3 3 4 3 5 4 4 4 5 5 5
Wyjście 1
NO NO YES YES YES NO YES YES YES NO NO YES NO NO NO