""" 도현이네 반 학생 N명의 이름과 국어, 영어, 수학 점수가 주어진다. 이 때, 다음과 같은 조건으로 학생의 성적을 정렬하는 프로그램을 작성하라.

    1. 국어 점수가 감소하는 순서
    2. 국어 점수가 같으면 영어 점수가 증가하는 순서
    3. 국, 영 점수가 같으면 수학 점수가 감소하는 순서
    4. 모든 점수가 같으면 이름이 사전 순으로 증가하는 순서로 ( 단, 아스키코드에서 대문자는 소문자보다 작으므로 사전 순으로 앞에 옴) """

# 첫 째 줄에 학생 수 N이 주어짐
# 둘 째 줄부터 한 줄에 하나씩 각 학생의 이름, 국어, 영어, 수학 점수가 공백으로 구분해 주어진다.
# 점수는 1보다 크거나 같고, 100보다 작거나 같은 자연수
# 이름은 알파벳 대소문자로 이루어진 문자열이고, 길이는 10자리를 넘지 않는다.
# 출력 - 문제에 나와있는 정렬 기준으로 정렬한 후 첫 째 줄부터 N개의 줄에 걸쳐 각 학생의 이름을 출력한다.

n = int(input())
data = []

for _ in range(n):
    a, b, c, d = input().split()
    data.append((int(b),int(c),int(d),a))

data.sort(key= lambda x:(-x[0], x[1], -x[2], x[3]))

for i in data:
    print(i[3])