import java.util.*;
import java.lang.*;

public class ith
{
	static int k;
	static int l;
	static byte[][] pole;

	public static boolean ok(int a, int b)
	{
		if((a >= 0) && (a < k) && (b >= 0) && (b < l) && (pole[a][b] == 0)) return true;
		else return false;
	}

	public static void main(String[] args)
	{
		Scanner sc = new Scanner(System.in);
		while(true)
		{
		k = sc.nextInt();
		l = sc.nextInt();
		if((k == 0) && (l == 0)) break;
		pole = new byte[k][l];
		
		int n = sc.nextInt();
		for(int i = 0; i < n; i++)
		{
			int a = sc.nextInt()-1;
			int b = sc.nextInt()-1;
			
			
			for(int o = 0; o < k; o++)
			{
				if(ok(a+o,b+o)) pole[a+o][b+o] = 1;
				if(ok(a-o,b+o)) pole[a-o][b+o] = 1;
				if(ok(a+o,b-o)) pole[a+o][b-o] = 1;
				if(ok(a-o,b-o)) pole[a-o][b-o] = 1;
				
				if(ok(a+o,b)) pole[a+o][b] = 1;
				if(ok(a-o,b)) pole[a-o][b] = 1;
			}
			for(int p = 0; p < l; p++)
			{
				if(ok(a,b+p)) pole[a][b+p] = 1;
				if(ok(a,b-p)) pole[a][b-p] = 1;
			}
		}
		int vys = 0;
			for(int o = 0; o < k; o++)
			{
				for(int p = 0; p < l; p++)
				{
					if(pole[o][p] == 0) vys++;
				}
			}
		System.out.println(vys);
}
	}
}