#define _CRT_SECURE_NO_WARNINGS 1
#include <bits/stdc++.h>
using namespace std;
struct laoshu {
    int weight;
    string hat;
};
bool compare(laoshu x, laoshu y) {
    return x.weight > y.weight;
}
int main() {
    int n = 0;
    scanf("%d", &n);
    laoshu* arr;
    arr = new laoshu[n];
    for (int i = 0; i < n; i++) {
        cin >> arr[i].weight >> arr[i].hat;
    }
    sort(arr, arr + n,
         compare); //结构体一定要重写函数,有很多东西,并不是直接逆置即可
    for (int i = 0; i < n; i++) {
        cout << arr[i].hat << endl;
    }
    return 0;
}