#include <bits/stdc++.h>
//#define int long long
#pragma GCC target ("avx2")
#pragma GCC optimization ("O3")
#pragma GCC optimization ("unroll-loops")
#define pii pair<int,int>
#define fi first
#define se second
using namespace std;
using ll = long long;
const int maxN = 1e5 + 10;
const ll infty = 1e18 + 5;
const int mod = 1e9 + 7;
int H,W;
int n;
int h[11],w[11];
int a[11][11];
int found = 0;
bool Valid(int x,int y,int row,int col)
{
if(x + row - 1 > H) return 0;
if(y + col - 1 > W) return 0;
for(int i = x;i < x + row;i++)
{
for(int j = y;j < y + col;j++)
{
if(a[i][j]) return 0;
}
}
return 1;
}
void Fill(int x,int y,int row,int col)
{
for(int i = x;i < x + row;i++)
{
for(int j = y;j < y + col;j++)
{
a[i][j] = 1;
}
}
}
void Remo(int x,int y,int row,int col)
{
for(int i = x;i < x + row;i++)
{
for(int j = y;j < y + col;j++)
{
a[i][j] = 0;
}
}
}
void Try(int idx)
{
if(found) return;
if(idx == n + 1)
{
found = 1;
return;
}
///
for(int a_i = 1;a_i <= H;a_i++)
{
for(int a_j = 1;a_j <= W;a_j++)
{
if(Valid(a_i,a_j,h[idx],w[idx]))
{
Fill(a_i,a_j,h[idx],w[idx]);
Try(idx+1);
Remo(a_i,a_j,h[idx],w[idx]);
}
if(Valid(a_i,a_j,w[idx],h[idx]))
{
Fill(a_i,a_j,w[idx],h[idx]);
Try(idx+1);
Remo(a_i,a_j,w[idx],h[idx]);
}
}
}
}
void Solve()
{
cin >> H >> W;
cin >> n;
for(int i = 1;i <= n;i++)
{
cin >> h[i] >> w[i];
}
Try(1);
cout << found;
}
int32_t main()
{
ios_base::sync_with_stdio(false);
cin.tie(nullptr);
int test = 1;
//cin >> test;
while (test--)
{
Solve();
}
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+Ci8vI2RlZmluZSBpbnQgbG9uZyBsb25nCiNwcmFnbWEgR0NDIHRhcmdldCAoImF2eDIiKQojcHJhZ21hIEdDQyBvcHRpbWl6YXRpb24gKCJPMyIpCiNwcmFnbWEgR0NDIG9wdGltaXphdGlvbiAoInVucm9sbC1sb29wcyIpCiNkZWZpbmUgcGlpIHBhaXI8aW50LGludD4KI2RlZmluZSBmaSBmaXJzdAojZGVmaW5lIHNlIHNlY29uZAp1c2luZyBuYW1lc3BhY2Ugc3RkOwp1c2luZyBsbCA9IGxvbmcgbG9uZzsKY29uc3QgaW50IG1heE4gPSAxZTUgKyAxMDsKY29uc3QgbGwgaW5mdHkgPSAxZTE4ICsgNTsKY29uc3QgaW50IG1vZCA9IDFlOSArIDc7CgppbnQgSCxXOwppbnQgbjsKaW50IGhbMTFdLHdbMTFdOwppbnQgYVsxMV1bMTFdOwoKaW50IGZvdW5kID0gMDsKCmJvb2wgVmFsaWQoaW50IHgsaW50IHksaW50IHJvdyxpbnQgY29sKQp7CiAgICBpZih4ICsgcm93IC0gMSA+IEgpIHJldHVybiAwOwogICAgaWYoeSArIGNvbCAtIDEgPiBXKSByZXR1cm4gMDsKICAgIGZvcihpbnQgaSA9IHg7aSA8IHggKyByb3c7aSsrKQogICAgewogICAgICAgIGZvcihpbnQgaiA9IHk7aiA8IHkgKyBjb2w7aisrKQogICAgICAgIHsKICAgICAgICAgICAgaWYoYVtpXVtqXSkgcmV0dXJuIDA7CiAgICAgICAgfQogICAgfQogICAgcmV0dXJuIDE7Cn0KCnZvaWQgRmlsbChpbnQgeCxpbnQgeSxpbnQgcm93LGludCBjb2wpCnsKICAgIGZvcihpbnQgaSA9IHg7aSA8IHggKyByb3c7aSsrKQogICAgewogICAgICAgIGZvcihpbnQgaiA9IHk7aiA8IHkgKyBjb2w7aisrKQogICAgICAgIHsKICAgICAgICAgICAgYVtpXVtqXSA9IDE7CiAgICAgICAgfQogICAgfQp9Cgp2b2lkIFJlbW8oaW50IHgsaW50IHksaW50IHJvdyxpbnQgY29sKQp7CiAgICBmb3IoaW50IGkgPSB4O2kgPCB4ICsgcm93O2krKykKICAgIHsKICAgICAgICBmb3IoaW50IGogPSB5O2ogPCB5ICsgY29sO2orKykKICAgICAgICB7CiAgICAgICAgICAgIGFbaV1bal0gPSAwOwogICAgICAgIH0KICAgIH0KfQoKdm9pZCBUcnkoaW50IGlkeCkKewogICAgaWYoZm91bmQpIHJldHVybjsKICAgIGlmKGlkeCA9PSBuICsgMSkKICAgIHsKICAgICAgICBmb3VuZCA9IDE7CiAgICAgICAgcmV0dXJuOwogICAgfQoKICAgIC8vLwogICAgZm9yKGludCBhX2kgPSAxO2FfaSA8PSBIO2FfaSsrKQogICAgewogICAgICAgIGZvcihpbnQgYV9qID0gMTthX2ogPD0gVzthX2orKykKICAgICAgICB7CiAgICAgICAgICAgIGlmKFZhbGlkKGFfaSxhX2osaFtpZHhdLHdbaWR4XSkpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIEZpbGwoYV9pLGFfaixoW2lkeF0sd1tpZHhdKTsKICAgICAgICAgICAgICAgIFRyeShpZHgrMSk7CiAgICAgICAgICAgICAgICBSZW1vKGFfaSxhX2osaFtpZHhdLHdbaWR4XSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYoVmFsaWQoYV9pLGFfaix3W2lkeF0saFtpZHhdKSkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgRmlsbChhX2ksYV9qLHdbaWR4XSxoW2lkeF0pOwogICAgICAgICAgICAgICAgVHJ5KGlkeCsxKTsKICAgICAgICAgICAgICAgIFJlbW8oYV9pLGFfaix3W2lkeF0saFtpZHhdKTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KfQoKdm9pZCBTb2x2ZSgpCnsKICAgIGNpbiA+PiBIID4+IFc7CiAgICBjaW4gPj4gbjsKICAgIGZvcihpbnQgaSA9IDE7aSA8PSBuO2krKykKICAgIHsKICAgICAgICBjaW4gPj4gaFtpXSA+PiB3W2ldOwogICAgfQogICAgVHJ5KDEpOwogICAgY291dCA8PCBmb3VuZDsKfQoKaW50MzJfdCBtYWluKCkKewogICAgaW9zX2Jhc2U6OnN5bmNfd2l0aF9zdGRpbyhmYWxzZSk7CiAgICBjaW4udGllKG51bGxwdHIpOwogICAgaW50IHRlc3QgPSAxOwogICAgLy9jaW4gPj4gdGVzdDsKICAgIHdoaWxlICh0ZXN0LS0pCiAgICB7CiAgICAgICAgU29sdmUoKTsKICAgIH0KICAgIHJldHVybiAwOwp9Cg==