#include <bits/stdc++.h>
using namespace std;
const int N = 1e6 + 10;
const int mod = 1e9 + 7;
int read() {
  int x = 0, f = 1;
  char c = getchar();
  while (c < '0' || c > '9') {
    if (c == '-') f = -1;
    c = getchar();
  }
  while (c >= '0' && c <= '9') x = (x << 1) + (x << 3) + c - '0', c = getchar();
  return x * f;
}
const int SEN = 2e5 + 10;
int n, m;
struct segmentTree {
  int u[SEN << 2], d[SEN << 2], p[SEN << 2];
  set<int> ri[SEN], le[SEN];
  void pushup(int pos) {
    u[pos] = max(u[pos << 1], u[pos << 1 | 1]);
    d[pos] = min(d[pos << 1], d[pos << 1 | 1]);
    p[pos] = p[pos << 1] | p[pos << 1 | 1] | (d[pos << 1] <= u[pos << 1 | 1]);
  }
  void update(int x, int f, int w, int v, int pos, int l, int r) {
    if (l == r) {
      if (f == 1) {
        if (w)
          ri[l].insert(v);
        else
          ri[l].erase(v);
      } else {
        if (w)
          le[l].insert(v);
        else
          le[l].erase(v);
      }
      u[pos] = (ri[l].size() == 0 ? 0 : *ri[l].rbegin());
      d[pos] = (le[l].size() == 0 ? m + 1 : *le[l].begin());
      p[pos] = d[pos] <= u[pos];
      return;
    }
    int mid = (l + r) >> 1;
    if (x <= mid)
      update(x, f, w, v, pos << 1, l, mid);
    else
      update(x, f, w, v, pos << 1 | 1, mid + 1, r);
    pushup(pos);
  }
  void build(int pos, int l, int r) {
    u[pos] = 0;
    d[pos] = m + 1;
    if (l == r) {
      return;
    }
    int mid = (l + r) >> 1;
    build(pos << 1, l, mid);
    build(pos << 1 | 1, mid + 1, r);
  }
} T;
map<pair<int, int>, int> mp;
int main() {
  n = read(), m = read();
  T.build(1, 1, n);
  int q = read();
  for (int i = 1; i <= q; i++) {
    int x = read(), y = read();
    x++, y++;
    if (mp[make_pair(x, y)] == 0) {
      mp[make_pair(x, y)] = 1;
      if (x & 1)
        T.update(x / 2, 1, 1, y / 2, 1, 1, n);
      else
        T.update(x / 2, 0, 1, y / 2, 1, 1, n);
    } else {
      mp[make_pair(x, y)] = 0;
      if (x & 1)
        T.update(x / 2, 1, 0, y / 2, 1, 1, n);
      else
        T.update(x / 2, 0, 0, y / 2, 1, 1, n);
    }
    puts(T.p[1] ? "NO" : "YES");
  }
}
