#include<bits/stdc++.h>
using namespace std;
#define ll long long
char ibuf[1<<23],*p1=ibuf,*p2=p1;
#define gc() p1==p2&&(p2=(p1=ibuf)+fread(ibuf,1,1<<21,stdin),p1==p2)?EOF:*p1++
inline static ll rd(){
ll x=0; char ch=gc();
while(!isdigit(ch))ch=gc();
while(isdigit(ch))x=x*10+(ch^48),ch=gc();
return x;
}
const int N=2e5+5;
int C,T,n,a[N],b[N],h[N];
ll tim[N];
#define ls p<<1
#define rs p<<1|1
int lt[N<<2],rt[N<<2],tg[N<<2],len[N<<2];
ll sm[N<<2],nw;
void pup(int p){
sm[p]=sm[ls]+sm[rs],lt[p]=lt[ls],rt[p]=rt[rs];
}
ll g(int l,int L){return 1ll*(l+l+L-1)*L/2;}
void pud(int p){
if(!tg[p])return; int x=tg[p];
tg[ls]=x,tg[rs]=x+len[ls],tg[p]=0;
lt[ls]=x,lt[rs]=x+len[ls],rt[ls]=lt[rs]-1,rt[rs]=x+len[p]-1;
sm[ls]=g(lt[ls],len[ls]),sm[rs]=g(lt[rs],len[rs]);
}
void build(int l,int r,int p){
len[p]=r-l+1,tg[p]=0;
if(l==r){
a[l]=rd(),b[l]=rd(),tim[l]=rd();
lt[p]=rt[p]=sm[p]=a[l]; return;
} int mid=l+r>>1;
build(l,mid,ls),build(mid+1,r,rs),pup(p);
}
inline int ask(int l,int r,int p,int x){
if(l==r)return lt[p]; int mid=l+r>>1; pud(p);
return x<=mid?ask(l,mid,ls,x):ask(mid+1,r,rs,x);
}
inline void cvr(int l,int r,int p,int lx,int rx,int v){
if(rx<l||r<lx)return;
if(lx<=l&&r<=rx){
tg[p]=lt[p]=l-lx+v,rt[p]=r-lx+v;
nw+=abs(g(lt[p],len[p])-sm[p]),sm[p]=g(lt[p],len[p]);
return;
} int mid=l+r>>1; pud(p);
cvr(l,mid,ls,lx,rx,v),cvr(mid+1,r,rs,lx,rx,v);
pup(p);
}
inline int findl(int l,int r,int p,int x){
if(l==r)return l+(lt[p]<=b[x]-x+l);
int mid=l+r>>1; pud(p);
if(rt[ls]<=b[x]-x+mid)return findl(mid+1,r,rs,x);
return findl(l,mid,ls,x);
}
inline int findr(int l,int r,int p,int x){
if(l==r)return l-(lt[p]>=b[x]-x+l);
int mid=l+r>>1; pud(p);
if(lt[rs]>=b[x]-x+mid+1)return findr(l,mid,ls,x);
return findr(mid+1,r,rs,x);
}
signed main(){
ios::sync_with_stdio(false);
freopen("move.in","r",stdin);
freopen("move.out","w",stdout);
int i,j,k,l,r,x,y,z;
C=rd(),T=rd();
while(T--){
n=rd(),iota(h+1,h+1+n,1),build(1,n,1);
sort(h+1,h+1+n,[&](int x,int y){return tim[x]<tim[y];});
for(i=1,nw=0,z=0;i<=n;++i){
k=h[i],x=ask(1,n,1,k);
if(x==b[k])continue;
if(x<b[k]){
y=findr(1,n,1,k),cvr(1,n,1,k,y,b[k]);
} else {
y=findl(1,n,1,k),cvr(1,n,1,y,k,b[k]-k+y);
} if(nw>tim[k]){z=1;break;}
} puts(z?"No":"Yes");
}
return 0;
}