#include <bits/stdc++.h>
using namespace std;
using point = pair<int, int>;
int D(point a, point b, point c) {
  return a.first * (b.second - c.second) - a.second * (b.first - c.first) +
         (b.first * c.second - b.second * c.first);
}
int main() {
  int n, d;
  cin >> n >> d;
  vector<point> poligon;
  poligon.push_back(make_pair(0, d));
  poligon.push_back(make_pair(d, 0));
  poligon.push_back(make_pair(n, n - d));
  poligon.push_back(make_pair(n - d, n));
  poligon.push_back(poligon[0]);
  int k;
  cin >> k;
  vector<point> points(k);
  for (auto &[x, y] : points) cin >> x >> y;
  for (auto each : points) {
    int s1 = 0, s2 = 0;
    for (int i = 0; i < poligon.size() - 1; ++i) {
      int test = D(each, poligon[i], poligon[i + 1]);
      if (test > 0)
        s1++;
      else if (test < 0)
        s2++;
    }
    if (s2 == 0 or s1 == 0)
      cout << "YES" << endl;
    else
      cout << "NO" << endl;
  }
  return 0;
}
