Se te da una secuencia $A_1, A_2, \ldots, A_N$ de longitud $N$. Escribe un programa para procesar las siguientes consultas:
1 L R X: Para todo $L \le i \le R$, asigna $A_i = \min(A_i, X)$.2 L R: Imprime $\max(A_L, A_{L+1}, \ldots, A_R)$.3 L R: Imprime $A_L + A_{L+1} + \ldots + A_R$.
Entrada
La primera línea contiene la longitud $N$ de la secuencia. ($1 \le N \le 1{,}000{,}000$)
La segunda línea contiene $A_1, A_2, \ldots, A_N$. ($0 \le A_i < 2^{31}$)
La tercera línea contiene el número $M$ de consultas. ($1 \le M \le 1{,}000{,}000$)
Las siguientes $M$ líneas contienen cada una una consulta. ($1 \le L \le R \le N$, $0 \le X < 2^{31}$) Las consultas de tipo 2 y tipo 3 aparecen al menos una vez.
Salida
Para cada consulta de tipo 2 y tipo 3, imprime el resultado, cada uno en una línea separada.
Ejemplos
Entrada de ejemplo 1
5 1 2 3 4 5 5 2 1 5 3 1 5 1 3 5 3 2 1 5 3 1 5
Salida de ejemplo 1
5 15 3 12