#include #define N 300005 #define re register #define ll long long using namespace std; int n,m,K,q; inline void Rd(int &res){ re char c;res=0; while(c=getchar(),c<48); do res=(res<<3)+(res<<1)+(c^48); while(c=getchar(),c>47); } vectora[105][25]; bool mk[N]; int c[N],tot; int main(){ int T; Rd(T); while(T--){ Rd(n); for(re int i=1;i<=n;i++){ Rd(K); for(re int j=1;j<=K;j++){ int t,p; Rd(t),Rd(p); a[t][p].push_back((int)i); } } mk[1]=1; for(re int i=0;i<=100;i++) for(re int j=0;j<=10;j++){ tot=0; for(re int k=0;k<(int)a[i][j].size();k++)c[++tot]=a[i][j][k]; if(tot<=1)continue; bool bo=0; for(re int k=1;k<=tot;k++)if(mk[c[k]]){bo=1;break;} if(bo)for(re int k=1;k<=tot;k++)mk[c[k]]=1; } tot=0; for(re int i=1;i<=n;i++){ if(mk[i])c[++tot]=i; } for(re int i=1;i<=tot;i++){ printf("%d",c[i]); putchar(i==tot?'\n':' '); } for(re int i=1;i<=n;i++)mk[i]=0; for(re int i=0;i<=100;i++) for(re int j=0;j<=10;j++)a[i][j].clear(); } return 0; }