#include <bits/stdc++.h>
using namespace std;
#define pb push_back
vector< vector<int> >adj;
int parent[1009][20],level[1009];
void dfs(int s,int p)
{
for(int i=0;i<adj[s].size();i++)
{
if(adj[s][i]!=p)
{
level[adj[s][i]]=level[s]+1;
parent[adj[s][i]][0]=s;
dfs(adj[s][i],s);
}
}
}
int main() {
int t;
cin>>t;
while(t--)
{
int m,i,n,j,x;
cin>>n;
adj.resize(n+1);
for(i=0;i<n;i++)
{
cin>>m;
for(j=0;j<m;j++)
{
cin>>x;
adj[i].pb(x-1);
adj[x-1].pb(i);
}
}
dfs(0,-1);
for(j=0;(1<<j)<n;j++)
{
for(i=n-1;i>=0;i--){
parent[i][j+1]=parent[parent[i][j]][j];}
}
cout<<level[8];
}
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CiNkZWZpbmUgcGIgcHVzaF9iYWNrCnZlY3RvcjwgdmVjdG9yPGludD4gPmFkajsKaW50IHBhcmVudFsxMDA5XVsyMF0sbGV2ZWxbMTAwOV07CnZvaWQgZGZzKGludCBzLGludCBwKQp7Cglmb3IoaW50IGk9MDtpPGFkaltzXS5zaXplKCk7aSsrKQoJewoJCQoJCWlmKGFkaltzXVtpXSE9cCkKCQl7CgkJCWxldmVsW2FkaltzXVtpXV09bGV2ZWxbc10rMTsKCQkJcGFyZW50W2FkaltzXVtpXV1bMF09czsKCQkJZGZzKGFkaltzXVtpXSxzKTsKCQl9Cgl9Cn0KaW50IG1haW4oKSB7CmludCB0OwpjaW4+PnQ7CndoaWxlKHQtLSkKewoJaW50IG0saSxuLGoseDsKCWNpbj4+bjsKCWFkai5yZXNpemUobisxKTsKCWZvcihpPTA7aTxuO2krKykKCXsKCQljaW4+Pm07CgkJCgkJZm9yKGo9MDtqPG07aisrKQoJCXsKCQkJY2luPj54OwoJCQlhZGpbaV0ucGIoeC0xKTsKCQkJYWRqW3gtMV0ucGIoaSk7CgkJfQoJfQoJZGZzKDAsLTEpOwoKCQlmb3Ioaj0wOygxPDxqKTxuO2orKykKCQl7CgkJCQlmb3IoaT1uLTE7aT49MDtpLS0pewoJCQkJcGFyZW50W2ldW2orMV09cGFyZW50W3BhcmVudFtpXVtqXV1bal07fQoJCX0KCQoJY291dDw8bGV2ZWxbOF07Cn0KfQ==