#include <bits/stdc++.h>
using namespace std;
int main() {
  int n, q, r, c;
  cin >> n >> q;
  vector<vector<int>> a(2, vector<int>(n, 1));
  vector<string> pass(q);
  set<pair<pair<int, int>, pair<int, int>>> count;
  for (int o = 0; o < q; o++) {
    cin >> r >> c;
    r--;
    c--;
    a[r][c] *= -1;
    if (a[r][c] == -1) {
      if (r == 1) {
        if (c - 1 >= 0 && a[0][c - 1] == -1) {
          count.insert({{0, c - 1}, {r, c}});
          count.insert({{r, c}, {0, c - 1}});
        }
        if (a[0][c] == -1) {
          count.insert({{0, c}, {r, c}});
          count.insert({{r, c}, {0, c}});
        }
        if (c + 1 < n && a[0][c + 1] == -1) {
          count.insert({{0, c + 1}, {r, c}});
          count.insert({{r, c}, {0, c + 1}});
        }
      } else {
        if (c - 1 >= 0 && a[1][c - 1] == -1) {
          count.insert({{1, c - 1}, {r, c}});
          count.insert({{r, c}, {1, c - 1}});
        }
        if (a[1][c] == -1) {
          count.insert({{1, c}, {r, c}});
          count.insert({{r, c}, {1, c}});
        }
        if (c + 1 < n && a[1][c + 1] == -1) {
          count.insert({{1, c + 1}, {r, c}});
          count.insert({{r, c}, {1, c + 1}});
        }
      }
    } else {
      if (!count.empty()) {
        if (r == 1) {
          if (c - 1 >= 0 && count.find({{0, c - 1}, {r, c}}) != count.end()) {
            count.erase({{0, c - 1}, {r, c}});
            count.erase({{r, c}, {0, c - 1}});
          }
          if (count.find({{0, c}, {r, c}}) != count.end()) {
            count.erase({{0, c}, {r, c}});
            count.erase({{r, c}, {0, c}});
          }
          if (c + 1 < n && count.find({{0, c + 1}, {r, c}}) != count.end()) {
            count.erase({{0, c + 1}, {r, c}});
            count.erase({{r, c}, {0, c + 1}});
          }
        } else {
          if (c - 1 >= 0 && count.find({{1, c - 1}, {r, c}}) != count.end()) {
            count.erase({{1, c - 1}, {r, c}});
            count.erase({{r, c}, {1, c - 1}});
          }
          if (count.find({{1, c}, {r, c}}) != count.end()) {
            count.erase({{1, c}, {r, c}});
            count.erase({{r, c}, {1, c}});
          }
          if (c + 1 < n && count.find({{1, c + 1}, {r, c}}) != count.end()) {
            count.erase({{1, c + 1}, {r, c}});
            count.erase({{r, c}, {1, c + 1}});
          }
        }
      }
    }
    if (count.empty())
      pass[o] = "Yes";
    else
      pass[o] = "No";
  }
  for (int i = 0; i < q; i++) {
    cout << pass[i] << endl;
  }
  return 0;
}
