/*
#include <stdio.h> // fajkehfaiowehfauwhefiuawhe fiuawㅗ댜ㅕ몾ㄷ ㅕㅑ롣 ㅐ랴머데래ㅓㅁㅈ댜려ㅗㅁ ㅑ져돎ㅈ댜ㅕ8롬자 ㄷㄹ매ㅑㅈㄷㄹ
typedef struct
{
int score;
int rank;
}scr;
int main()
{
scr st[201];
int i, j, n, rk;
scanf("%d", &n);
for(i=1;i<=n;i++)
{
scanf("%d", &st[i].score);
}
for(i=1;i<=n;i++)
{
rk=1;
for(j=1;j<=n;j++)
{
if(st[i].score < st[j].score)
{
rk++;
}
}
st[i].rank=rk;
}
for(i=1;i<=n;i++)
{
printf("%d %d\n", st[i].score, st[i].rank);
}
}
*/
#include <stdio.h>
typedef struct
{
int countries;
int studentnumber;
int score;
}scr;
scr arr[101];
int n;
int a=0, b=0, i=0, j=0, c=0, d=0, e=0, f=0;
int MAX()
{
/*111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111*/
int i=0, j=0, w=0;
for(i=1;i<=n;i++)
{
for(j=1;j<=n;j++)
{
if(arr[j].score > arr[i].score)
{
w++;
}
}
if(w==0)
{
a = arr[j].countries;
d = arr[j].studentnumber;
}
else if(w==1)
{
b = arr[j].countries;
e = arr[j].studentnumber;
}
else if(w==2)
{
c = arr[j].countries;
f = arr[j].studentnumber;
}
}
}
int main(void)
{
scanf("%d", &n);
for(i=1;i<=n;i++)
{
scanf("%d %d %d", &arr[i].countries, &arr[i].studentnumber, &arr[i].score);
}
MAX();
printf("%d %d\n%d %d\n%d %d", a, b, c ,d , e, f);
}