Statement is not available in English language
E. 稳定区间
time limit per test
2 seconds
memory limit per test
512 megabytes
input
standard input
output
standard output

给定一个长度为 n 的序列 aq 个询问。

每个询问给出区间 [l, r],你需要判断该区间是否存在一个 非空 子序列,其元素总和是 3 的倍数。

具体来说,你需要找到一个长度 m ≥ 1 的下标序列 p ,对所有 pi 满足 l ≤ p1 < p2 < ... < pm ≤ r ,且 3 的倍数。

若存在这样的下标序列,则称区间 [l, r] 是稳定的。

Input

第一行 2 个整数 nq1 ≤ n, q ≤ 105

第二行 n 个整数 a1, a2, ..., an1 ≤ ai ≤ 109

接下来 q 行每行 2 个整数 l, r1 ≤ l ≤ r ≤ n

Output

对于每个询问,输出一行:

  • 如果区间是稳定的则输出 "Yes"。
  • 否则输出 "No"。

你可以以任意大小写输出 "Yes" 和 "No"(例如,字符串 "yEs"、"yes"、"Yes" 和 "YES" 将被识别为肯定的回答)。

Example
Input
5 4
1 4 5 3 6
1 2
2 3
4 4
1 5
Output
No
Yes
Yes
Yes