Closest Equals

给定一个下标从 11 ~ nn 的序列 aa,然后进行 mm 次询问。

每次询问给出一对 [l,r][l, r],找到区间中数值相等的且距离最相近的两个数 aia_iaja_j,求它们的距离。

换言之找到一组数 (ai,aj)(a_i, a_j) 满足

  • ai=aja_i = a_j;

  • li,jrl \leq i, j \leq r (ij)(i \neq j);

ij|i - j| 的最小值,如果区间中不存在相等的两个数,则输出 1-1

输入格式

第一行输入两个整数 1n,m5×1051 \leq n, m \leq 5 \times 10^5

第二行输入 nn 个整数 1ai1091 \leq a_i \leq 10^9

接下来 mm 行,每行输入两个整数 1lrn1 \leq l \leq r \leq n

输出格式

输出 mm 行,每行包含一个整数作为询问的答案。

输入样例1

5 3
1 1 2 3 2
1 5
2 4
3 5

输出样例1

1
-1
2

输入样例2

6 5
1 2 1 3 2 3
4 6
1 3
2 5
2 4
1 6

输出样例2

2
2
3
-1
2