/**#include <stdio.h>
typedef struct
{
int s[201];
int fs[201];
}ss;
int main()
{
int n,i;
ss a;
scanf("%d",&n);
for(i=0;i<n;i++)
scanf("%d",a.s[i]);
return 0;
}
///;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
*/
#include <stdio.h>
typedef struct
{
int cun;
int pn;
int score;
}c;
typedef struct
{
int fcu;
int fp;
int fc;
}f;
int main()
{
int n,i,j,t;
f b[102];
c v[101];
b[0].fc=2147;
b[0].fp=1;
scanf("%d",&n);
for(i=0;i<n;i++)
{
scanf("%d %d %d",&v[i].cun,&v[i].pn,&v[i].score);
}
for(i=0;i<n;i++)
{
t=0;
for(j=0;j<n;j++)
{
if(v[j].score>t && v[j].score<b[i].fc &&(i<=1 || b[0].fcu==b[1].fcu))
{
t=v[j].score;
b[i].fcu=v[j].cun;
b[i].fp=v[j].pn;
//printf("\n1[%d] : %d",j,t);
}
else if(v[j].score>t && v[j].score<b[i].fc && (b[1].fcu!=v[j].cun || b[1].fcu==v[j].cun))
{
t=v[j].score;
b[i].fcu=v[j].cun;
b[i].fp=v[j].pn;
//printf("\n2[%d] : %d",j,t);
}
}
b[i+1].fc=t;
}
//printf("\nhi %d==%d %d %d bye\n",v[5].pn,b[4].fp,b[0].fcu,b[0].fc);
for(i=0;i<3;i++)
{
printf("%d %d",b[i].fcu,b[i].fp);
if(i!=2)
printf("\n");
}
return 0;
}