#include <iostream>
#include <string.h>
#include <algorithm>

using namespace std;

struct rec{
    char n[100]="";
    int g=0;
    int p=0;
};


bool cmp(rec e1, rec e2){

    if(e1.p>e2.p)
        return true;
    if(e1.p==e2.p)
    {
        if(e1.g>e2.g)
            return true;
        if(e1.g==e2.g)
            if(strcmp(e1.n, e2.n)<0)
                return true;
    }
    return false;
}

int main()
{
    rec e[7];
    int i, g1, g2, p1, p2, j, lg=-1;
    char name1[100], name2[100];
    for(i=1;i<=6;i++){

        cin>>name1>>name2>>g1>>g2;
        p1=-1;
        p2=-1;
        for(j=0;j<=lg;j++)
        {
            if(strcmp(e[j].n, name1)==0)
                p1=i;
            if(strcmp(e[j].n, name2)==0)
                p1=i;
        }
        if(p1==-1){
            //e[++lg].n=name2;
            strcpy(e[++lg].n, name1);
            p1=lg;
        }
        if(p2==-1){
            strcpy(e[++lg].n, name2);
            p2=lg;
        }
        e[p1].g+=g1;
        e[p2].g+=g2;
        if(g1>g2)
            e[p1].p+=3;
        if(g1<g2)
            e[p2].p+=3;
        if(g1==g2)
        {
            e[p1].p++;
            e[p2].p++;
        }
    }
    sort(e, e+5, cmp);
    for(i=0;i<=3;i++)
        cout<<e[i].n<<'\n';
}