#include<cstdio>
#include<cstdlib>
struct node
{
int d;
int c;
int m;
int e;
int s;
}a[500];
int n;
void jh(int &a,int &b)
{
int p=a;
a=b;
b=p;
}
int main()
{
scanf("%d",&n);
for(int i=1;i<=n;i++)
{
a[i].d=i;
scanf("%d%d%d",&a[i].c,&a[i].m,&a[i].e);
a[i].s=a[i].c+a[i].e+a[i].m;
}
for(int i=1;i<=n;i++)
for(int j=i+1;j<=n;j++)
{
if(a[i].s<a[j].s)
{
jh(a[i].d,a[j].d);
jh(a[i].s,a[j].s);
jh(a[i].c,a[j].c);
jh(a[i].e,a[j].e);
jh(a[i].m,a[j].m);
}
if(a[i].s==a[j].s)
{
if(a[i].c<a[j].c)
{
jh(a[i].d,a[j].d);
jh(a[i].s,a[j].s);
jh(a[i].c,a[j].c);
jh(a[i].e,a[j].e);
jh(a[i].m,a[j].m);
}
if(a[i].c==a[j].c)
{
if(i>j)
{
jh(a[i].d,a[j].d);
jh(a[i].s,a[j].s);
jh(a[i].c,a[j].c);
jh(a[i].e,a[j].e);
jh(a[i].m,a[j].m);
}
}
}
}
for(int i=1;i<=5;i++)
printf("%d %d
",a[i].d,a[i].s);
return 0;
}