길이가 $N$인 수열 $A_1, A_2, \ldots, A_N$이 주어진다. 이때, 다음 쿼리를 수행하는 프로그램을 작성하시오.
- $1$ $i$ $j$ $x$ $y$ : $A_i, A_{i+1}, \ldots, A_j$에 초항이 $x$이고 공차가 $y$인 등차수열을 더한다. ($1 \le i \le j \le N$, $-100{,}000 \le x, y \le 100{,}000$)
- $2$ $i$ $j$ : $i \le l < r \le j$이면서 $A_l, A_{l+1}, \ldots, A_r$이 등차수열인 가장 긴 연속 부분 수열의 길이를 출력한다. ($1 \le i < j \le N$)
입력
첫째 줄에 수열의 크기 $N$ ($2 \le N \le 100{,}000$)이 주어진다.
둘째 줄에는 $A_1, A_2, \ldots, A_N$이 주어진다. ($-100{,}000 \le A_i \le 100{,}000$)
셋째 줄에는 쿼리의 개수 $M$ ($1 \le M \le 100{,}000$)이 주어진다.
넷째 줄부터 $M$개의 줄에는 쿼리가 주어진다.
모든 입력은 정수이다.
출력
$2$번 쿼리마다 정답을 한 줄에 하나씩 출력한다.
Sample
Input
5 1 2 3 4 5 4 2 1 5 1 3 4 1 1 2 1 5 2 3 5
Output
5 3 2