#include<bits/stdc++.h> using namespace std; int n; string k; int str_to_int(string a) { int ans=0; for(int i=0;i<a.length();i++) ans=ans*10+a[i]-'0'; return ans; } struct oppo{ char na; int s; oppo(char na,int s):na(na),s(s){}; }; stack<oppo> v; bool MAP[205]; void work() { int sj=0,ans=0,all=0,flag=0; while(v.size()) v.pop(); memset(MAP,0,sizeof(MAP)); cin>>n>>k; if(k!="O(1)"){ for(int i=0;i<k.length();i++) if('0'<=k[i]&&k[i]<='9') sj=sj*10+k[i]-'0'; } char t,a; string b,c; for(int i=1;i<=n;i++) { cin>>t; if(t=='F') { cin>>a>>b>>c; int bb,cc; if(b=="n") bb=2020; else bb=str_to_int(b); if(c=="n") cc=2020; else cc=str_to_int(c); if(MAP[a]) flag=1; MAP[a]=1; if(cc-bb>100){ v.push(oppo(a,all)); all++; ans=max(all,ans); } else{ if(bb>cc){ v.push(oppo(a,all)); all=-10000; }else{ v.push(oppo(a,all)); } } } else { if(v.size()){ all=v.top().s; MAP[v.top().na]=0; v.pop(); }else flag=1; } } if(flag||v.size()) puts("ERR"); else if(ans==sj) puts("Yes"); else puts("No"); return ; } int T; int main() { cin>>T; while(T--) work(); return 0; }