//Problem:hdu1004
//Data:2011/10/30
#include <iostream>
using namespace std;
//颜色结构,num用来计算每种颜色出现的次数
struct Color{
int num;
char color[16];
};
Color input[1000] = {0,""};
//按降序排序
int int_cmp(const void *a, const void *b)
{
return *(int *)b - *(int *)a;
}
int main()
{
//freopen("E:\\in.txt","r",stdin);
int n,i,j;
char temp[16];
while(cin>>n,n!=0)
{
int count=0;
bool exist;
for(i=0; i<n; i++)
{
//每读入一个颜色,就判断是否之前出现过,如果出现过,就把exist标记为true,并把计数+1,然后立即break出循环
cin >> temp;
exist = false;
for(j=0; j<count; j++)
{
if(strcmp(temp,input[j].color) == 0)
{
exist = true;
input[j].num++;
break;
}
}
//如果不存在,就把这种颜色加到数组中去,并使计数初始为0
if(!exist)
{
//input[count].color = temp;
strcpy(input[count].color,temp);
input[count].num = 0;
count++;
}
}
//对数组进行快速排序,排在第一个的就是数量最多的颜色,最后打印
qsort(input,count,sizeof(Color),int_cmp);
cout << input[0].color << endl;
}
return 0;
}