Problem:
Mode Value

Your task is to write a program which reads a sequence of integers and prints mode values of the sequence.
The mode value is the element which occurs most frequently.

Input

A sequence of integers ai (1 ≤ ai ≤ 100). The number of integers is less than or equals to 100.

Output

Print the mode values. If there are several mode values, print them in ascending order.

Sample Input

5
6
3
5
8
7
5
3
9
7
3
4

Output for the Sample Input

3
5

For example, 3 and 5 respectively occur three times, 7 occurs two times, and others occur only one. So, the mode values are 3 and 5.

Solution in Scala (judge verdict: Accepted)

object Main {
    def wrap(l: List[Int]): List[(Int, Int)] = {
        if (l.isEmpty) Nil
        else {
            val (x, y) = l.span(_ == l.head)
            (x.head, x.size) :: wrap(y)
        }
    }
    def main(args: Array[String]) = {
        val in = io.Source.stdin.getLines.map(_.toInt).toList
        val wrapped = wrap(in.sorted)
        wrapped.filter(_._2 == wrapped.maxBy(_._2)._2).foreach(p => println(p._1))
    }
}