#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
int main() {
int n;
while (scanf("%d", &n) != EOF) {
int t = n;
struct{
int name;
int sum;
int ma;
int en;
int c;
}sco[5005];
for (int i = 1; i <= n; i++) {
scanf("%d %d %d %d", &sco[i].name, &sco[i].ma, &sco[i].en, &sco[i].c);
sco[i].sum = sco[i].ma + sco[i].en + sco[i].c;
}
int max = sco[1].sum;
int min = sco[1].sum;
for (int i = 2; i <= n; i++) {
if (sco[i].sum > max) max = sco[i].sum;
if (sco[i].sum <min)min = sco[i].sum;
}
for (int i = 1; i < n; i++) {
for (int j = i + 1; j <= n; j++) {
if (sco[i].sum == min&&sco[j].sum==min&&sco[i].name>sco[j].name) {
sco[1004] = sco[i];
sco[i] = sco[j];
sco[j] = sco[1004];
}
}
}
for (int i = 1; i < n; i++) {
for (int j = i + 1; j <= n; j++) {
if (sco[i].sum == max && sco[j].sum == max && sco[i].name > sco[j].name) {
sco[1004] = sco[i];
sco[i] = sco[j];
sco[j] = sco[1004];
}
}
}
printf("BEST\n");
for (int i = 1; i <= n; i++) {
if (max == sco[i].sum)printf("%d %d %d %d %d\n", sco[i].name, sco[i].sum, sco[i].ma, sco[i].en, sco[i].c);
}
printf("WORST\n");
for (int i = 1; i <= n; i++) {
if (min == sco[i].sum)printf("%d %d %d %d %d\n", sco[i].name, sco[i].sum, sco[i].ma, sco[i].en, sco[i].c);
}printf("\n");
}
return 0;
}