// Задача "Олимпийские игры"
// Шестая индивидуальная Интернет-олимпиада сезона 2009-2010.
// Автор задачи: Федор Царев, tsarev@rain.ifmo.ru
// Автор решения: Антон Банных, argentony@gmail.com

import java.io.*;
import java.util.*;

public class olympic_ab {
	public static void main(String[] args) {
		(new olympic_ab()).run();
	}
	
	Scanner in;
	PrintWriter out;
	
	public void run() {
		try {
			in = new Scanner(new File("olympic.in"));
			out = new PrintWriter("olympic.out");
			solve();
			out.close();
		} catch (Throwable e) {
			e.printStackTrace();
			System.exit(-1);
		}
	}
	
	void solve() {
		int n = Integer.parseInt(in.nextLine());
		assert 1 <= n && n <= 100;
		
		HashMap<String, Result> hm = new HashMap<String, Result>();
		
		for (int i = 0; i < n; ++i) {
			String line = in.nextLine();
			assert line.length() <= 200;
			StringTokenizer st = new StringTokenizer(line);
			for (int j = 0; j < 3; ++j) {
				String name = st.nextToken();
				if (!hm.containsKey(name)) {
					hm.put(name, new Result(name));
				}
				hm.get(name).v[j]++;
			}
		}
		
		Result rz = null;
		for (Map.Entry<String, Result> e : hm.entrySet()) {
			if (rz == null || rz.compareTo(e.getValue()) > 0) {
				rz = e.getValue();
			}
		}
		out.println(rz.name);		
	}
	
	
	
	class Result implements Comparable<Result> {
		String name;
		int[] v = new int[3];
		
		public Result(String nm) {
			name = nm;
		}

		@Override
		public int compareTo(Result o) {
			for (int i = 0; i < 3; ++i) {
				if (v[i] > o.v[i]) return -1;
				if (v[i] < o.v[i]) return 1;
			}
			return name.compareTo(o.name);
		}
	}
}
