Petit Poisson Cyan possède un rectangle de $n$ lignes et $m$ colonnes, où les indices des lignes et des colonnes commencent tous deux à $0$. La case située à la ligne $i$ et à la colonne $j$ peut être notée $(i, j)$ ($0 \le i \le n - 1, 0 \le j \le m - 1$). Initialement, toutes les cases existent (ne sont pas supprimées).
Petit Poisson Cyan dit que deux cases $(x_a, y_a)$ et $(x_b, y_b)$ sont adjacentes si et seulement si $|x_a - x_b| + |y_a - y_b| = 1$. Autrement dit, ces deux cases partagent une frontière commune (on parle aussi de 4-adjacence). Pour deux cases $p = (x_a, y_a)$ et $q = (x_b, y_b)$, si elles peuvent être reliées par une suite de cases adjacentes et non supprimées, alors les cases $p$ et $q$ sont dites connectées (4-connectées).
Par exemple, considérons la situation ci-dessus (où les cases noires représentent les cases supprimées et les cases blanches représentent les cases non supprimées) : la case A et la case B sont adjacentes. La case A est connectée à la case B et à la case C, mais la case A et la case D ne sont pas connectées.
Maintenant, Petit Poisson Cyan va effectuer certaines opérations dans son rêve. Lors de chaque opération, Petit Poisson Cyan choisit une case $(x, y)$ et supprime la case $(x, y)$.
Petit Poisson Cyan est très curieux de savoir, après chaque suppression, combien parmi les cases non supprimées restantes dans le rectangle actuel sont des points d'articulation (sommets de coupure). Plus précisément :
- Pour une certaine case $r = (x_r, y_r)$, s'il existe deux cases $p = (x_p, y_p)$ et $q = (x_q, y_q)$ telles que $p$ et $q$ soient connectées dans la grille, mais ne le soient plus après la suppression de la case $r$, alors $r$ est appelée un point d'articulation.
Par exemple, sur la figure ci-dessus, la case E est un point d'articulation. En effet, pour la case A et la case C, elles sont connectées avant la suppression de la case E, mais ne sont plus connectées après la suppression de la case E.
Cependant, comme le rêve de Petit Poisson Cyan est très magique, vous ne pouvez pas prédire ses opérations suivantes. Vous devez donc répondre à toutes ces opérations en ligne (online). Plus précisément, le couple $(x, y)$ donné lors de la $i$-ème ($2 \le i \le q$) opération dépendra du résultat renvoyé par la $i-1$-ème opération. Veuillez aider Petit Poisson Cyan à répondre à toutes les requêtes sous cette contrainte.
Entrée
La première ligne contient trois entiers $n$, $m$ et $q$ ($2 \le n, m \le 500$, $1 \le q \le n \cdot m$).
Les $q$ lignes suivantes contiennent chacune deux entiers $x'_i, y'_i$ ($0 \le x'_i < n, 0 \le y'_i < m$), représentant les coordonnées chiffrées $(x_i, y_i)$ de la case supprimée. Si la réponse à la requête précédente est $preans$, alors les coordonnées réelles sont $x_i = (x'_i + preans) \bmod n$ et $y_i = (y'_i + preans) \bmod m$. Initialement, on considère que $preans = 0$.
Il est garanti que les couples $(x_i, y_i)$ déchiffrés sont deux à deux distincts. Autrement dit, une même case ne sera pas supprimée plusieurs fois.
Sortie
Pour chaque opération, affichez une seule ligne contenant un entier représentant le nombre de points d'articulation après cette opération de suppression.
Exemple
Entrée 1
5 5 12 0 1 0 1 1 4 2 3 4 1 2 4 1 1 4 2 2 1 4 2 1 0 0 0
Sortie 1
1 2 2 6 5 7 10 7 6 7 7 4
Note
Les données déchiffrées :
5 5 12 0 1 1 2 3 1 4 0 0 2 2 4 3 3 4 2 4 3 0 3 3 2 2 2
Voici l'ordre dans lequel chaque case est coloriée en noir.