6538 - A Horrible Poem

给出一个由小写英文字母组成的字符串S,再给出q个询问,要求回答S某个子串的最短循环节。

如果字符串B是字符串A的循环节,那么A可以由B重复若干次得到。

输入

第一行一个正整数n(n≤500000),表示S的长度。

第二行n个小写英文字母,表示字符串S。

第三行一个正整数q(q≤2000000),表示询问次数。

下面q行每行两个正整数a,b(1≤a≤b≤n),表示询问字符串S[a…b]的最短循环节长度。

输出

依次输出q行正整数,第i行的正整数对应第i个询问的答案。

样例

输入

8
aaabcabc
3
1 3
3 8
4 8

输出

1
3
5

来源

一本通提高

时间限制 1 秒
内存限制 128 MB
讨论 统计
上一题 下一题