#include <iostream>
#include <vector>
#include <string>
#include <map>
using namespace std;
typedef long long ll;
typedef struct _segtree{
struct _segtree * left;
struct _segtree * right;
ll sum;
}segtree;
segtree * insert(segtree * t, int l, int r, int x){
if (l == r){
segtree * v = new segtree(*t);
v->left = nullptr;
v->right = nullptr;
v->sum = t->sum + 1;
return v;
}
segtree * v = new segtree(*t);
int mid = (l+r)>>1;
if (x <= mid){
v->left = insert(v->left, l, mid, x);
}else{
v->right = insert(v->right, mid+1, r, x);
}
v->sum = v->left->sum + v->right->sum;
return v;
}
segtree * build(int l, int r){
if (l == r){
segtree * v = new segtree();
v->left = nullptr;
v->right = nullptr;
v->sum = 0;
return v;
}
segtree * v = new segtree();
int mid = (l+r)>>1;
v->left = build(l, mid);
v->right = build( mid+1, r);
v->sum = 0;
return v;
}
ll lessthan(segtree * t, int l, int r, int ll){
if ( r <= ll)
return t->sum;
if(l == r)
return 0;
int mid = (l+r)>>1;
long long ans = 0;
if (mid < ll){
ans += lessthan(t->left, l, mid, ll);
ans += lessthan(t->right, mid+1, r, ll);
}else{
ans += lessthan(t->left, l, mid, ll);
}
return ans;
}
typedef pair<int,int> pii;
#define MAXN 200010
segtree * e[MAXN];
vector<pii> a;
#define x first
#define y second
int main()
{
#ifndef ONLINE_JUDGE
freopen("input.txt","r",stdin);
freopen("output.txt","w",stdout);
#endif
int h, w, m;
cin >> h >> w >> m;
int hm = w+1;
int vm = h+1;
for(int i = 0; i < m; ++ i){
int _x, _y; cin>>_x>>_y;
a.push_back(make_pair(_x,_y));
if(_x == 1){
hm = min(hm, _y);
}
if(_y == 1){
vm = min(vm, _x);
}
}
segtree * beg = build(1, h+2);
vector<int> r(w+1);
vector<int> dow(h+1);
for(int i = 1; i <= w; ++ i)
r[i] = h+1;
for(int i = 1; i <= h; ++ i)
dow[i] = w+1;
for(int i = 0; i < m; ++ i){
r[a[i].y] = min(r[a[i].y] , a[i].x);
dow[a[i].x] = min(dow[a[i].x], a[i].y);
}
for(int i = 1; i <= w; ++ i){
e[i] = insert(beg, 1, h+2, r[i]);
beg = e[i];
}
e[w+1] = e[w];
ll subs = 0;
ll ret = 0;
for(int i = 1; i < vm; ++i){
ll uu = lessthan(e[dow[i]-1],1,h+2,i-1);
subs += dow[i] - uu -1;
ret += dow[i]-1;
}
for(int i = 1; i < hm; ++i)
ret += r[i]-1;
cout << ret - subs <<endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dmVjdG9yPgojaW5jbHVkZSA8c3RyaW5nPgojaW5jbHVkZSA8bWFwPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwp0eXBlZGVmIGxvbmcgbG9uZyBsbDsKdHlwZWRlZiBzdHJ1Y3QgX3NlZ3RyZWV7CiAgICBzdHJ1Y3QgX3NlZ3RyZWUgKiBsZWZ0OwogICAgc3RydWN0IF9zZWd0cmVlICogcmlnaHQ7CiAgICBsbCBzdW07Cn1zZWd0cmVlOwoKc2VndHJlZSAqIGluc2VydChzZWd0cmVlICogdCwgaW50IGwsIGludCByLCBpbnQgeCl7CiAgICBpZiAobCA9PSByKXsKICAgICAgICBzZWd0cmVlICogdiA9IG5ldyBzZWd0cmVlKCp0KTsKICAgICAgICB2LT5sZWZ0ID0gbnVsbHB0cjsKICAgICAgICB2LT5yaWdodCA9IG51bGxwdHI7CiAgICAgICAgdi0+c3VtID0gdC0+c3VtICsgMTsKICAgICAgICByZXR1cm4gdjsKICAgIH0KICAgIHNlZ3RyZWUgKiB2ID0gbmV3IHNlZ3RyZWUoKnQpOwogICAgaW50IG1pZCA9IChsK3IpPj4xOwogICAgaWYgKHggPD0gbWlkKXsKICAgICAgICB2LT5sZWZ0ID0gaW5zZXJ0KHYtPmxlZnQsIGwsIG1pZCwgeCk7CiAgICB9ZWxzZXsKICAgICAgICB2LT5yaWdodCA9IGluc2VydCh2LT5yaWdodCwgbWlkKzEsIHIsIHgpOwogICAgfQogICAgdi0+c3VtID0gdi0+bGVmdC0+c3VtICsgdi0+cmlnaHQtPnN1bTsKICAgIHJldHVybiB2Owp9CnNlZ3RyZWUgKiBidWlsZChpbnQgbCwgaW50IHIpewogICAgaWYgKGwgPT0gcil7CiAgICAgICAgc2VndHJlZSAqIHYgPSBuZXcgc2VndHJlZSgpOwogICAgICAgIHYtPmxlZnQgPSBudWxscHRyOwogICAgICAgIHYtPnJpZ2h0ID0gbnVsbHB0cjsKICAgICAgICB2LT5zdW0gPSAwOwogICAgICAgIHJldHVybiB2OwogICAgfQogICAgc2VndHJlZSAqIHYgPSBuZXcgc2VndHJlZSgpOwogICAgaW50IG1pZCA9IChsK3IpPj4xOwogICAgdi0+bGVmdCA9IGJ1aWxkKGwsIG1pZCk7CiAgICB2LT5yaWdodCA9IGJ1aWxkKCBtaWQrMSwgcik7CiAgICB2LT5zdW0gPSAwOwogICAgcmV0dXJuIHY7Cn0KbGwgbGVzc3RoYW4oc2VndHJlZSAqIHQsIGludCBsLCBpbnQgciwgaW50IGxsKXsKICAgIGlmICggciA8PSBsbCkKICAgICAgICByZXR1cm4gdC0+c3VtOwogICAgaWYobCA9PSByKQogICAgICAgIHJldHVybiAwOwogICAgaW50IG1pZCA9IChsK3IpPj4xOwogICAgbG9uZyBsb25nIGFucyA9IDA7CiAgICBpZiAobWlkIDwgbGwpewogICAgICAgIGFucyArPSBsZXNzdGhhbih0LT5sZWZ0LCBsLCBtaWQsIGxsKTsKICAgICAgICBhbnMgKz0gbGVzc3RoYW4odC0+cmlnaHQsIG1pZCsxLCByLCBsbCk7CiAgICB9ZWxzZXsKICAgICAgICBhbnMgKz0gbGVzc3RoYW4odC0+bGVmdCwgbCwgbWlkLCBsbCk7CiAgICB9CiAgICByZXR1cm4gYW5zOwogICAgCn0KdHlwZWRlZiBwYWlyPGludCxpbnQ+IHBpaTsKI2RlZmluZSBNQVhOIDIwMDAxMApzZWd0cmVlICogZVtNQVhOXTsKdmVjdG9yPHBpaT4gYTsKI2RlZmluZSB4IGZpcnN0CiNkZWZpbmUgeSBzZWNvbmQKaW50IG1haW4oKQp7CiAgICAjaWZuZGVmIE9OTElORV9KVURHRQogICAgICAgIGZyZW9wZW4oImlucHV0LnR4dCIsInIiLHN0ZGluKTsKICAgICAgICBmcmVvcGVuKCJvdXRwdXQudHh0IiwidyIsc3Rkb3V0KTsKICAgICNlbmRpZgogICAgaW50IGgsIHcsIG07CiAgICBjaW4gPj4gaCA+PiB3ID4+IG07CiAgICBpbnQgaG0gPSB3KzE7CiAgICBpbnQgdm0gPSBoKzE7CiAgICBmb3IoaW50IGkgPSAwOyBpIDwgbTsgKysgaSl7CiAgICAgICAgaW50IF94LCBfeTsgY2luPj5feD4+X3k7CiAgICAgICAgYS5wdXNoX2JhY2sobWFrZV9wYWlyKF94LF95KSk7CiAgICAgICAgaWYoX3ggPT0gMSl7CiAgICAgICAgICAgIGhtID0gbWluKGhtLCBfeSk7CiAgICAgICAgfQogICAgICAgIGlmKF95ID09IDEpewogICAgICAgICAgICB2bSA9IG1pbih2bSwgX3gpOwogICAgICAgIH0KICAgIH0KICAgIHNlZ3RyZWUgKiBiZWcgPSBidWlsZCgxLCBoKzIpOwogICAgdmVjdG9yPGludD4gcih3KzEpOwogICAgdmVjdG9yPGludD4gZG93KGgrMSk7CiAgICBmb3IoaW50IGkgPSAxOyBpIDw9IHc7ICsrIGkpICAgCiAgICAgICAgIHJbaV0gPSBoKzE7CiAgICBmb3IoaW50IGkgPSAxOyBpIDw9IGg7ICsrIGkpCiAgICAgICAgZG93W2ldID0gdysxOwogICAgZm9yKGludCBpID0gMDsgaSA8IG07ICsrIGkpewogICAgICAgIHJbYVtpXS55XSA9IG1pbihyW2FbaV0ueV0gLCBhW2ldLngpOyAKICAgICAgICBkb3dbYVtpXS54XSA9IG1pbihkb3dbYVtpXS54XSwgYVtpXS55KTsKICAgIH0gIAogICAgZm9yKGludCBpID0gMTsgaSA8PSB3OyArKyBpKXsKICAgICAgICBlW2ldID0gaW5zZXJ0KGJlZywgMSwgaCsyLCByW2ldKTsKICAgICAgICBiZWcgPSBlW2ldOwogICAgfQogICAgZVt3KzFdID0gZVt3XTsKICAgIGxsIHN1YnMgPSAwOwogICAgbGwgcmV0ID0gMDsKICAgIGZvcihpbnQgaSA9IDE7IGkgPCB2bTsgKytpKXsKICAgICAgICBsbCB1dSA9IGxlc3N0aGFuKGVbZG93W2ldLTFdLDEsaCsyLGktMSk7CiAgICAgICAgc3VicyArPSBkb3dbaV0gLSB1dSAtMTsgCiAgICAgICAgcmV0ICs9IGRvd1tpXS0xOwogICAgfQogICAgZm9yKGludCBpID0gMTsgaSA8IGhtOyArK2kpCiAgICAgICAgcmV0ICs9IHJbaV0tMTsKICAgIGNvdXQgPDwgcmV0IC0gc3VicyA8PGVuZGw7CiAgICByZXR1cm4gMDsKfQ==