#include #include #include #include #include #include #include #include #include #include #include using namespace std; typedef long long ll; const ll mod=1e9+7; //const int inf=0x3f3f3f3f; #define mem(a,b) memset(a,b,sizeof(a)) #define IOS ios::sync_with_stdio(false);cin.tie(0) #define mcy(a,b) memcpy(a,b,sizeof(a)) bool ch[20005]; int main() { int t,n,m; int a,b; int aa,bb; scanf("%d",&t); while (t--) { mem(ch,0); ch[1]=1; aa=0,bb=0; scanf("%d",&n); vectorv[105][15]; vectorans; ans.push_back(1); for(int i=1;i<=n;++i) { scanf("%d",&m); for(int j=1;j<=m;++j) { scanf("%d %d",&a,&b); aa=max(aa,a); bb=max(bb,b); v[a][b].push_back(i); } } for(int i=1;i<=aa;++i) { for(int j=1;j<=bb;++j) { int flag=0; for(vector::iterator it=v[i][j].begin();it!=v[i][j].end();++it) { if(ch[*it]) { flag=1; break; } } if(flag) { for(vector::iterator it=v[i][j].begin();it!=v[i][j].end();++it) { if(!ch[*it]) { ans.push_back(*it); ch[*it]=1; } } } } } sort(ans.begin(),ans.end()); for(vector::iterator it=ans.begin();it!=ans.end();++it) { printf("%d", *it); if(it!=ans.end()-1)printf(" "); else printf("\n"); } } return 0; }