#include <stdio.h>
#include <string.h>

int main() {
    int n, op;
    scanf("%d\n%d", &n, &op);
    char name[n][21];
    int point[n];
    for (int i = 0; i < n; i++) {
        scanf("%s %d", name[i], &point[i]);
    }
    for (int i = 0; i < n; i++) {
        for (int j = 1; j < n - i; j++) {
            if (op == 0) {
                if (point[j] > point[j - 1]) {
                    char nametemp[21];
                    int temp = point[j];
                    point[j] = point[j - 1];
                    point[j - 1] = temp;
                    strcpy(nametemp, name[j]);
                    strcpy(name[j], name[j - 1]);
                    strcpy(name[j - 1], nametemp);
                }
            } else if (op == 1) {
                if (point[j] < point[j - 1]) {
                    char nametemp[21];
                    int temp = point[j];
                    point[j] = point[j - 1];
                    point[j - 1] = temp;
                    strcpy(nametemp, name[j]);
                    strcpy(name[j], name[j - 1]);
                    strcpy(name[j - 1], nametemp);
                }
            }

        }
    }
    for (int i = 0; i < n; i++) {
        printf("%s %d\n", name[i], point[i]);
    }
    return 0;
}