#include<bits/stdc++.h>
using namespace std;
#define pb push_back
#define F first
#define S second
typedef long long ll;
typedef pair<int, int> pii;
#define sz(x) (int)(x).size()
#define all(x) x.begin(), x.end()
 
ll powmod(ll a,ll b) {ll res=1; assert(b>=0); for(;b;b>>=1){if(b&1)res=res*a;a=a*a;}return res;}
ll gcd(ll a,ll b) { return b?gcd(b,a%b):a;}

void solve() {
    int n,m;
    cin >> n >> m;
    vector<vector<int>> v(2);
    for(int i=0;i<m;++i) 
    {
        int r,c;
        cin >> r >> c;
        v[r-1].pb(c);
    }
    sort(all(v[0])); sort(all(v[1]));
    int pr=-1,pc=-1, unbalanced=0;
    
    for(int i=0,j=0;i<v[0].size() || j<v[1].size();) {
        if(i==v[0].size()) {
            if(pr==-1 || !unbalanced) {
                pr=1; pc = v[1][j]; ++j; unbalanced = 1;
                continue;
            }
            if(pr==0 && (v[1][j]-pc)&1) {cout<<"NO\n"; return; }
            if(pr==1 && (v[1][j]-pc)%2 ==0) { cout<<"NO\n"; return; }
            pr=1; pc = v[1][j]; unbalanced=0;
            ++j;
        } else if(j == v[1].size()) {
            if(pr==-1 || !unbalanced) {
                pr=0; pc = v[0][i];++i; unbalanced = 1;
                continue;
            }
            if(pr==1 && (v[0][i]-pc)&1) { cout<<"NO\n"; return; }
            if(pr==0 && (v[0][i]-pc)%2 == 0) { cout<<"NO\n"; return; }
            pr=0; pc = v[0][i]; unbalanced = 0;
            ++i;
        } else {
            if(v[0][i] == v[1][j]) {
                if(unbalanced) {
                    cout<<"NO\n";
                    return;
                }
                ++i;++j; continue;
            } else if(v[0][i] < v[1][j]) {
                if(pr==-1 || !unbalanced) {
                    pr=0; pc = v[0][i]; ++i; unbalanced = 1;
                    continue;
                }
                if(pr==1 && (v[0][i]-pc)&1) { cout<<"NO\n"; return; }
                if(pr==0 && (v[0][i]-pc)%2 == 0) { cout<<"NO\n"; return; }
                pr=0; pc = v[0][i]; unbalanced = 0;
                ++i;
            } else {
                if(pr==-1 || !unbalanced) {
                    pr=1; pc = v[1][j]; ++j; unbalanced = 1;
                    continue;
                }
                if(pr==0 && (v[1][j]-pc)&1) {cout<<"NO\n"; return; }
                if(pr==1 && (v[1][j]-pc)%2 ==0) { cout<<"NO\n"; return; }
                pr=1; pc = v[1][j]; unbalanced=0;
                ++j;
            }
        }
    }
    
    if(unbalanced) cout<<"NO\n";
    else cout << "YES\n";
}


int main(){
    ios_base::sync_with_stdio(false); cin.tie(NULL); 
    int t;
    cin>>t;
    while(t--){
        solve();
    }
  return 0;
}