#include <bits/stdc++.h>
#define ll long long
using namespace std;
const int N = 1e5 + 9;
bool vis[N];
string s;
ll t, l;
ll donum;
char ch;
struct pro
{
string name;
string chu, end;
ll nchu, nend;
}bf[N];
int main()
{
scanf("%lld", &t);
while(t--)
{
ll ans = 0;
scanf("%lld", &l);
ll len = l;
cin >> s;
if(s[2] == '1' && s[3] == ')')
donum = 0;
else
{
donum = 0;
ll j = 4;
while(s[j] != ')')
{
donum = donum*10 + s[j] - '0';
j++;
}
}
ll cnt = 0;
bool flag = true, bj = false; // flag循环是否可行
ll sum = 0; // 几层嵌套的循环
stack <int> ph; // 语法
map <string, bool> bian; // 记录变量重复
for(int i = 1; i <= len; i++)
{
if(ph.empty())
{
flag = true;
cnt = 0;
}
// scanf("%c", &ch);
cin >> ch;
// printf("%c ** \n", ch);
if(ch == 'F')
{
cin >> bf[i].name;
cin >> bf[i].chu;
cin >> bf[i].end;
ph.push(i);
sum++;
string zchu = bf[i].chu, zend = bf[i].end;
for(int j = 0; j < zchu.size(); j++)
bf[i].nchu = bf[i].nchu*10 + zchu[j] - '0';
for(int j = 0; j < zend.size(); j++)
bf[i].nend = bf[i].nend*10 + zend[j] - '0';
if(bian[bf[i].name])
bj = true;
bian[bf[i].name] = true;
// if(bf[i].chu != n && bf[i].end != n && flag)
// cnt++;
// if(bf[i].chu == n && bf[i].end == n && flag)
// cnt++;
// if(bf[i].chu != n && bf[i].end == n && flag)
// ans = max(sum - cnt, ans);
// if(bf[i].chu == n && bf[i].end != n)
// flag = false;
// if(bf[i].chu != n && bf[i].end != n && bf[i].chu > bf[i].end)
// flag = false;
// printf("%lld *** %lld *** %lld", donum, ans, sum)
if(bf[i].chu == "n" && bf[i].end != "n")
flag = false;
if(bf[i].chu != "n" && bf[i].end != "n" && bf[i].chu > bf[i].end)
flag = false;;
if(bf[i].chu != "n" && bf[i].end != "n" && flag)
cnt++;
if(bf[i].chu == "n" && bf[i].end == "n" && flag)
cnt++;
if(bf[i].chu != "n" && bf[i].end == "n" && flag)
ans = max(sum - cnt, ans);
}
if(ch == 'E')
{
if(!ph.empty())
{
bian[bf[ph.top()].name] = false;
ph.pop();
sum--;
}
else
{
bj = true;
}
}
}
// printf("%lld *** %lld", donum, ans);
if(bj)
{
printf("ERR\n");
continue;
}
if(len%2 || !ph.empty())
{
printf("ERR\n");
continue;
}
if(ans == donum)
{
printf("Yes\n");
continue;
}
else
{
printf("No\n");
continue;
}
}
}