#include <iostream>
#include <cstring>
using
namespace
std;
const
int
SIZE = 100;
int
n, m, p, a[SIZE][SIZE], count;
void
colour(
int
x,
int
y){
count++;
a[x][y] = 1;
if
((x > 1) && (a[x - 1][y] == 0)) colour(x - 1, y);
if
((y > 1) && (a[x][y - 1] == 0)) colour(x, y - 1);
if
((x < n) && (a[x + 1][y] == 0)) colour(x + 1, y);
if
((y < m) && (a[x][y + 1] == 0)) colour(x, y + 1);
}
int
main(){
int
i, j, x, y, ans;
memset
(a, 0,
sizeof
(a));
cin>>n>>m>>p;
for
(i = 1;i <= p;i++) {
cin>>x>>y;
a[x][y] = 1;
}
ans = 0;
for
(i = 1;i <= n;i++)
for
(j = 1;j <= m;j++)
if
(a[i][j] == 0) {
count = 0;
colour(i, j);
if
(ans < count)
ans = count;
}
cout<<ans<<endl;
return
0;
}