#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<math.h>
typedef struct
{
char aa[1000];
double count;
}name;
int comp(const void*p,const void*q)
{
return ((name *)q)->count >((name *)p)->count;
}
int main()
{
int t,i,j,temp,n;
name f[1000];
scanf("%d",&n);
while(n--)
{
scanf("%d",&t);
for(i=0;i<t;++i)
{
scanf("%s",f[i].aa);
scanf("%lf",&f[i].count);
}
qsort(f,t,sizeof(name),comp);
for(i=0;i<t;++i)
{
printf("%s\n",f[i].aa);
}
}
}