#include<stdio.h>
#include<stdlib.h>
#include<string.h>
struct studentData {
char name[11];
char id[11];
int achievement;
};
int main(){
int studentNumbers;
scanf("%d", &studentNumbers);
struct studentData* dataPointer;
dataPointer = calloc(3, sizeof(struct studentData));
(dataPointer + 2)->achievement = 101;
int i;
for (i = 0; i < studentNumbers; i++) {
scanf("%s", &dataPointer->name);
scanf("%s", &dataPointer->id);
scanf("%d", &dataPointer->achievement);
if (dataPointer->achievement > (dataPointer + 1)->achievement) {
strcpy((dataPointer + 1)->name, dataPointer->name);
strcpy((dataPointer + 1)->id, dataPointer->id);
(dataPointer + 1)->achievement = dataPointer->achievement;
}
if (dataPointer->achievement < (dataPointer + 2)->achievement) {
strcpy((dataPointer + 2)->name, dataPointer->name);
strcpy((dataPointer + 2)->id, dataPointer->id);
(dataPointer + 2)->achievement = dataPointer->achievement;
}
}
printf("%s %s\n", (dataPointer + 1)->name, (dataPointer + 1)->id);
printf("%s %s", (dataPointer + 2)->name, (dataPointer + 2)->id);
return 0;
}