给你一个长度为 $n$ 的数组 $a_1, \dots, a_n$,其中的元素属于 $\{1, \dots, n\} \cup \{-1\}$。
一个整数序列 $p_1, \dots, p_k$ 被称为好排列,如果满足 $\{p_1, \dots, p_k\} = \{1, \dots, k\}$,且对于所有 $1 \le i < k$,都有 $p_{i+1} \ge p_i - 1$。
你需要回答 $q$ 个询问。每个询问由一对整数 $(l, r)$ 给出。对于每个询问,请检查是否可以将子数组 $a_l, \dots, a_r$ 中的所有 $-1$ 替换为正整数,使得该子数组成为一个好排列。
输入格式
第一行包含两个整数 $n$ 和 $q$($1 \le n, q \le 2 \cdot 10^5$),分别表示数组的长度和询问的个数。
第二行包含一个由 $n$ 个整数组成的序列 $a_1, a_2, \dots, a_n$($-1 \le a_i \le n, a_i \neq 0$),表示数组的元素。
接下来的 $q$ 行描述询问;第 $i$ 行包含两个整数 $l_i$ 和 $r_i$($1 \le l_i \le r_i \le n$),表示第 $i$ 个询问。
输出格式
输出恰好 $q$ 行。第 $i$ 行应包含第 $i$ 个询问的答案,为单词 YES 或 NO。
样例
输入样例 1
5 3 -1 2 1 -1 5 1 5 2 5 2 4
输出样例 1
YES NO YES
说明 1
在第一个询问中,我们可以得到一个好排列 $3, 2, 1, 4, 5$。在第二个询问中,任何长度为 $4$ 的好排列都不可能包含元素 $5$。在第三个询问中,我们可以得到一个好排列 $2, 1, 3$。
输入样例 2
2 2 1 1 1 2 1 1
输出样例 2
NO YES