#include <bits/stdc++.h>
using namespace std;
const long long INF = 1e9;
const long long mod = 1e9 + 7;
const long long mod2 = 998244353;
long long pow(long long a, long long b, long long mod) {
  long long prod = 1;
  long long mult = a;
  while (b != 0) {
    if (b % 2) {
      prod *= mult;
      prod %= mod;
    }
    mult *= mult;
    mult %= mod;
    b /= 2;
  }
  return prod;
}
long long mod_inv(long long q, long long mod) { return pow(q, mod - 2, mod); }
const long long MAXN = 1e5 + 10;
long long a[3][MAXN];
signed main() {
  ios_base::sync_with_stdio(false);
  cin.tie(0);
  cout.tie(0);
  long long n, q;
  cin >> n >> q;
  set<pair<pair<long long, long long>, pair<long long, long long> > > blocked;
  for (long long i = 0; i < q; i++) {
    long long r, c;
    cin >> r >> c;
    a[r][c] = 1 - a[r][c];
    if (a[r][c]) {
      if (a[3 - r][c - 1]) {
        blocked.insert({{r, c}, {3 - r, c - 1}});
      }
      if (a[3 - r][c]) {
        blocked.insert({{r, c}, {3 - r, c}});
      }
      if (a[3 - r][c + 1]) {
        blocked.insert({{r, c}, {3 - r, c + 1}});
      }
    }
    if (!a[r][c]) {
      if (a[3 - r][c - 1]) {
        blocked.erase({{r, c}, {3 - r, c - 1}});
        blocked.erase({{3 - r, c - 1}, {r, c}});
      }
      if (a[3 - r][c]) {
        blocked.erase({{r, c}, {3 - r, c}});
        blocked.erase({{3 - r, c}, {r, c}});
      }
      if (a[3 - r][c + 1]) {
        blocked.erase({{r, c}, {3 - r, c + 1}});
        blocked.erase({{3 - r, c + 1}, {r, c}});
      }
    }
    if (blocked.size()) {
      cout << "No" << '\n';
    } else
      cout << "Yes" << '\n';
  }
}
