Dany jest ciąg $A_1, A_2, \ldots, A_N$ długości $N$ oraz dwa ciągi $B$ i $C$ długości $N$, które początkowo spełniają $B_i = A_i$ i $C_i = A_i$. Napisz program przetwarzający następujące zapytania:
1 L R X: Dla wszystkich $L \le i \le R$ ustaw $A_i = A_i + X$.2 L R Y: Dla wszystkich $L \le i \le R$ ustaw $A_i = \max(A_i, Y)$.3 L R Y: Dla wszystkich $L \le i \le R$ ustaw $A_i = \min(A_i, Y)$.4 L R: Wypisz $\min(A_L, A_{L+1}, \ldots, A_R)$.5 L R: Wypisz $\min(B_L, B_{L+1}, \ldots, B_R)$.6 L R: Wypisz $\max(C_L, C_{L+1}, \ldots, C_R)$.
Po każdym zapytaniu, dla wszystkich $1 \le i \le N$, zaktualizuj $B_i = \min(B_i, A_i)$ oraz $C_i = \max(C_i, A_i)$.
Wejście
Pierwszy wiersz zawiera liczbę całkowitą $N$, długość ciągu. ($1 \le N \le 500\,000$)
Drugi wiersz zawiera $N$ liczb całkowitych $A_1, A_2, \ldots, A_N$. ($-10^9 \le A_i \le 10^9$)
Trzeci wiersz zawiera liczbę całkowitą $M$, liczbę zapytań. ($1 \le M \le 500\,000$)
Kolejne $M$ wierszy zawiera po jednym zapytaniu. ($1 \le L \le R \le N$, $-2\,000 \le X \le 2\,000$, $-10^9 \le Y \le 10^9$) Zapytania typów $4$, $5$ i $6$ występują co najmniej raz.
Wyjście
Dla każdego zapytania typów $4$, $5$ i $6$ wypisz odpowiedź, każdą w osobnym wierszu.
Przykład
Wejście 1
3 1 2 3 6 5 3 3 1 2 3 -2 3 1 3 0 5 3 3 2 2 3 4 5 1 3
Wyjście 1
3 0 0