#include <iostream>
#include <cstring>
#include <cstdio>
#include <algorithm>
#include <set>
using namespace std;

struct point
{
    int x, y;
};

bool cmpx( point a, point b )
{
    if ( a.x == b.x )
        return a.y < b.y;
    return a.x < b.x;
}

bool cmpy( point a, point b )
{
    if ( a.y == b.y )
        return a.x < b.x;
    return a.y < b.y;
}

int n;
int w, h, s;
multiset<int> ms;

point p[200020];

bool put( int l, int r )
{
    multiset<int>::iterator it;
    if ( r-l < s )
        return 0;
    it = ms.upper_bound( l );
    if ( it == ms.end() )
        return 1;
    int k = (*it);
//    cout << "PUT " << l << " " << r << " " << k << endl;
    if ( k-l >= s )
        return 1;
    else return put( k, r );
}

int main()
{
    int i, j, k, l, r;
    int y1, y2;
    multiset<int>::iterator it, jt;

    scanf( "%d %d %d", &w, &h, &s );
    scanf( "%d", &n );
    for ( i = 1; i <= n; i++ )
    {
        scanf( "%d %d", &p[i].x, &p[i].y );
    }

    sort( p + 1, p + n + 1, cmpy );
    ms.clear();

    y2 = 1;
    while ( ( y2 <= n ) && ( p[y2].y < s ) )
    {
        ms.insert( p[y2].x );
        y2++;
    }
    ms.insert( 0 );
    ms.insert( w );
    for ( it = ms.begin(); it != ms.end(); it++ )
    {
        jt = it;
        jt++;
        if ( jt != ms.end() )
        {
            if ( (*jt) - (*it) >= s )
            {
                printf( "YES\n" );
                return 0;
            }
        }
    }
    for ( y1 = 1; y1 <= n; y1++ )
    {
        if ( p[y1].y+s > h )
            break;
        while ( ( y2 <= n ) && ( p[y2].y < p[y1].y+s ) )
        {
            ms.insert( p[y2].x );
            y2++;
        }
        it = ms.find( p[y1].x );
        if ( it != ms.end() )
            ms.erase( it );
//        cout << y1 << " " << y2 << endl;
        l = p[y1].x-s;
        if ( l < 0 ) l = 0;
        r = p[y1].x+s;
        if ( r > w ) r = w;

//        cout << l << " " << r << endl;

        if ( put( l, r ) == 1 )
        {
            printf( "YES\n" );
            return 0;
        }
    }
    printf( "NO\n" );
    return 0;
}
