

function soucet(a : longint) : integer;
var
  b : longint;
begin
  b := 0;
  while a >= 10 do begin
    b := b + a mod 10;
    a := a div 10;
    

    


  end;
  
  b := b + a;

  soucet := b;
end;




var
  maxX, maxY, pocet, x, y, i, j : integer;
  vystup : longint;

  radek, sloupec, diag1, diag2 : array[1..40000] of byte;

begin

read(maxX);
read(maxY);
readln(pocet);

while maxX <> 0 do begin
  vystup := 0;
  
  for i := 1 to maxX do begin
    radek[i] := 0;
  end;
   for i := 1 to maxY do begin
    sloupec[i] := 0;
  end;
   for i := 1 to maxX + maxY - 1 do begin
    diag1[i] := 0;
    diag2[i] := 0;
  end;


  for i := 1 to pocet do begin
    read(x);
    readln(y);

    sloupec[x] := 1;
    radek[y] := 1;
    diag1[x + maxY - y] := 1;
    diag2[x + y - 1] := 1;
  end;

  for i := 1 to maxX do begin
    for j := 1 to maxY do begin
      if (sloupec[i] = 0) and (radek[j] = 0) then begin
        if (diag1[i + maxY - j] = 0) and (diag2[i + j - 1] = 0) then begin
          
          inc(vystup);
        end;
      end;
    end;
  end;

  writeln(vystup);

  read(maxX);
  read(maxY);
  readln(pocet);

end;










end.