#include int main () { int konec = 0, x, y, n, sur1, sur2, i, volne, pomoc, a, pomoc2; int riadok[20000]; int stlpec[20000]; int diag1[20000]; int diag2[20000]; while (konec == 0) { scanf("%d %d %d", &x, &y, &n); if ((x == 0)&&(y == 0)&&(n == 0)) konec = 1; if (konec == 0) { volne = x * y; for (i = 0; i <= 20000; i ++) { riadok[i] = 1; stlpec[i] = 1; diag1[i] = 1; diag2[i] = 1; } for (i = 1; i <= n; i++) { scanf("%d %d", &sur1, &sur2); if (riadok[sur2] == 1) { pomoc = 0; for (a = 0; a <= x; a++) if (stlpec[a] == 0) pomoc = pomoc + 1; for (a = (sur2 - 1); a <= (sur2 + x - 2); a++) if (diag1[a] == 0) pomoc = pomoc + 1; for (a = (x - sur2); a <= (x - sur2 + y - 1); a++) if (diag2[a] == 0) pomoc = pomoc + 1; volne = volne - y + pomoc; riadok[sur2] = 0; } if (stlpec[sur1] == 1) { pomoc = 0; for (a = 0; a <= y; a++) if (riadok[a] == 0) pomoc = pomoc + 1; for (a = (sur1 - 1); a <= (sur1 + y - 2); a++) if (diag1[a] == 0) pomoc = pomoc + 1; for (a = (sur1 - y + x - 1); a <= (sur1 - y + x + x - 2); a++) if (diag2[a] == 0) pomoc = pomoc + 1; volne = volne - x + pomoc; stlpec[sur1] = 0; } if (diag1[sur1+sur2-2] == 1) { pomoc = 0; if (sur1 + sur2 - 1 <= ((x+y)/2)) { for (a = 0; a <= (sur1 + sur2 - 2); a++) if (riadok[a] == 0) pomoc = pomoc + 1; for (a = 0; a <= (sur1 + sur2 - 2); a++) if ((stlpec[a] == 0)) pomoc = pomoc + 1; if (sur1 < sur2) { for (a = (sur1 - sur2 + x -1); a <= (sur2 - sur1 + x - 1); a = a + 2) if (diag2[a] == 0) pomoc = pomoc + 1; } else { for (a = (sur2 - sur1 + x -1); a <= (sur1 - sur2 + x - 1); a = a + 2) if (diag2[a] == 0) pomoc = pomoc + 1; } } else { for (a = x; a >= (sur1 + sur2 - x - y + x - 1); a--) if (riadok[a] == 0) pomoc = pomoc + 1; for (a = y; a <= (sur1 + sur2 - x - y + y - 1); a--) if ((stlpec[a] == 0)) pomoc = pomoc + 1; if (sur1 < sur2) { for (a = (sur1 - sur2 + x -1); a <= (sur2 - sur1 + x - 1); a = a + 2) if (diag2[a] == 0) pomoc = pomoc + 1; } else { for (a = (sur2 - sur1 + x -1); a <= (sur1 - sur2 + x - 1); a = a + 2) if (diag2[a] == 0) pomoc = pomoc + 1; } } if (sur1 + sur2 > ((x + y)/2)) { volne = volne - ((x+y) - sur1 -sur2 + 1) + pomoc - 1; } else { volne = volne - sur1 - sur2 + 1 + pomoc - 1; } diag1[sur1+sur2-2] = 0; } if (diag2[sur1 - sur2 + x - 1] == 1) { pomoc = 0; pomoc2 = 0; if (sur2 >= sur1) { for (a = (sur2 - 1); a <= y; a++) { if (riadok[a] == 0) pomoc = pomoc + 1; pomoc2 = pomoc2 + 1; } for (a = (sur1 - 1); a <= (sur1 - 2 + pomoc2); a++) if ((stlpec[a] == 0)) pomoc = pomoc + 1; for (a = (sur1 + sur2 - 2); a <= (sur1 + sur2 - 2 + (sur1 - sur2 + x - 1)); a = a +2) if (diag1[a] == 0) pomoc = pomoc + 1; } else { pomoc = 0; for (a = sur1 - 1; a <= x; a++) if (stlpec[a] == 0) { pomoc = pomoc + 1; pomoc2 = pomoc2 + 1; } for (a = (sur2 - 1); a <= (sur2 + pomoc2 - 2); a++) if ((riadok[a] == 0)) pomoc = pomoc + 1; for (a = (sur1 + sur2 - 2); a <= (sur1 + sur2 - 2 + (sur2 - sur1 + x - 1)); a = a +2) if (diag1[a] == 0) pomoc = pomoc + 1; } if (sur1 >= sur2) { volne = volne - (x - (sur1 - sur2)) + pomoc - 1; } else { volne = volne - (x + (sur1 - sur2)) + pomoc - 1; } diag2[sur1 - sur2 + x - 1] = 0; } } printf("%d\n", volne); } } return 0; }