Une liste $A$ est dite loose si $\max(A) + \min(A) > \text{len}(A)$.
Aujourd'hui, Rikka a obtenu une liste $A$ de longueur $n$. Elle souhaite trouver le plus long segment $[l, r]$ dans $A$ tel que la liste $[A_l, A_{l+1}, \dots, A_r]$ soit loose.
Rikka effectuera $m$ tours avec la liste $A$. À chaque tour, Rikka effectuera une ou plusieurs opérations données en séquence. Chaque opération consiste à échanger deux éléments dans la liste $A$. Votre tâche est de calculer la longueur du plus long segment loose de $A$ et de la liste résultante après chaque tour.
Notez que les opérations du tour $i$ sont effectuées sur la liste qui était le résultat du tour $(i - 1)$.
Entrée
La première ligne contient deux entiers $n$ et $m$ ($1 \le n \le 10^6$ et $1 \le m \le 30$).
La deuxième ligne contient $n$ entiers $A_i$ ($-10^6 \le A_i \le 10^6$) qui constituent la liste initiale $A$.
Suivent ensuite $m$ descriptions des tours. Pour chaque tour, la première ligne contient un entier unique $k$ ($1 \le k \le 10^6$), le nombre d'échanges. Puis $k$ lignes suivent : chacune d'elles contient deux entiers $u_i$ et $v_i$ ($1 \le u_i, v_i \le n$ et $u_i \neq v_i$) tels que Rikka échangera $A_{u_i}$ et $A_{v_i}$ lors de cette opération.
Il est garanti que $\sum k \le 10^6$.
Sortie
Sur la première ligne, affichez un entier unique : la longueur du plus long segment loose de $A$.
Ensuite, affichez $m$ lignes. Sur chacune d'elles, imprimez un entier unique : la longueur du plus long segment loose de la liste résultante après chaque tour.
Exemples
Entrée 1
5 2 1 2 -2 3 4 1 2 3 1 1 2
Sortie 1
2 3 4