/*
二分图匹配, p门课程n个学生 找出p个学生代表 不能有重复的 这是我对题意的理解
也就是X Y 点集一一对应
*/
#include<cstdio>
#include<cstring>int p,n; // ke数 点数
int g[410][410],vis[410],pr[410];
bool SP(int u)
{
int v;
for(v = 1; v <= n; v++)
{
if(g[u][v]&&!vis[v])
{
vis[v] = 1;
if(pr[v]==0||SP(pr[v]))
{
pr[v] = u;
return true;
}
}
}
return false;
}
int max1()
{
int res=0;
memset(pr,0,sizeof(pr));
for(int i = 1; i <= p; i++)
{
memset(vis,0,sizeof(vis));
if(SP(i)) res++;
}
return res;
}
int main()
{
int t;
scanf("%d",&t);
while(t--)
{
scanf("%d%d",&p,&n);
for(int i = 1; i <= p; i++)
{
int ci,sc;
scanf("%d",&ci);
for(int j = 0; j < ci; j++)
{
scanf("%d",&sc);
g[i][sc] = 1;
}
}
if(p==max1())
printf("YES\n");
else
puts("NO");
memset(g,0,sizeof(g));
}
return 0;
}