Go: package main

import (
	"fmt"
	"sort"
)

func main() {
	var max int

	numbers := map[int]int{}
	for {
		var a int
		_, err := fmt.Scan(&a)
		if err != nil {
			break
		}
		numbers[a]++
		if numbers[a] >= max {
			max = numbers[a]
		}
	}

	var modes []int
	for a, b := range numbers {
		if b == max {
			modes = append(modes, a)
		}
	}

	sort.Ints(modes)
	for _, mode := range modes {
		fmt.Println(mode)
	}
}

Python: import sys
array = []
array2 = []
num = 0
for i in sys.stdin.readlines():
    array.append(int(i))
for i in range(len(array)):
    if i == 0:
        a = 0
    elif array.count(array[i]) > a:
        num = array.count(array[i])
        a = array.count(array[i])
for i in range(len(array)):
    if array.count(array[i]) == num:
        array2.append(array[i])
array2 = list(set(array2))
for i in range(len(array2)):
    print(array2[i])

Python: a=[0]*100
while True:
	try:
		a[int(input())]+=1
	except:
		break
for i in range(100):
	if a[i]==max(a):
		print(i)

Python: a = [0 for i in range(101)]
while True:
  try:
    n = int(input())
    a[n] += 1
  except EOFError:
    break

m = 0
for i in range(1, 101):
  m = max(m, a[i])
for i in range(1, 101):
  if a[i] == m:
    print(i)

Python: 
a = [0] * 100
while True:
    try:
        a[int(input()) - 1] += 1
    except:
        break

flag = False
for i in range(100)[::-1]:
    if flag:
        exit()
    for j in range(100):
        if a[j] == i:
            flag = True
            print(j + 1)

Python: from __future__ import (absolute_import, division, print_function,
                        unicode_literals)
from sys import stdin
from collections import Counter
from itertools import takewhile
from operator import itemgetter

counter = Counter()
for line in stdin:
    if not line.split():
        break
    counter[int(line)] += 1

v = counter.most_common(1)[0][1]
mc = takewhile(lambda x: v == x[1], counter.most_common(100))
for n, _ in sorted(mc, key=itemgetter(0)):
    print(n)

Python: l=[0]*101
while True:
    try:
        i=int(input())
        l[i]+=1
    except:
        break
M=max(l)
for j in range(1,101):
    if l[j]==M:
        print(j)
    else:
        pass

Python: a=[]
while True:
    try:
        a.append(int(input()))
    except:
        break
count=[0]*101
for i in a:
    count[i]+=1
for i in range (len(a)):
    if count[i]==max(count):
        print(i)

Python: # 0028
array = []
while True:
    try:
        a = input()
        array.append(int(a))
    except EOFError: break
s = set(array)
mx = max(sorted(s, reverse=True), key = array.count)
for a in sorted(s, key = array.count, reverse=True):
    print(a)
    if a == mx: break

Python: c=[0]*101
while True :
    try : 
        a=int(input())
        c[a]=c[a]+1
    except EOFError :
        break
max=max(c)
for i in range(101):
    if c[i]==max:
        print(i)

Python: count = [0] * 101
maxCount = 0
while(True):
    try:
        s = input()
        count[s] += 1
        if(maxCount < count[s]):
            maxCount = count[s]
    except Exception:
        break   
for i in range(len(count)):
    if(maxCount == count[i]):
        print(i)

Python: import sys

A = [i+1 for i in range(100)]
B = [0 for i in range(100)]

a = [0 for i in range(100)]

for l in sys.stdin:
    a.append(int(l))

# for i in range(4):
#     a[i] = int(input())

for x in a:
    if x in A:
        B[x-1] += 1

max = max(B)

for i in range(100):
    if  B[i] == max:
        print(i+1)

Python: A=[]
while True:
	try:
		x=int(input())
		A.append(x)
	except EOFError:
		break

num=[]
for i in range(10):
	num.append((A.count(i),i))

num.sort(reverse=True)
mode_value=num[0][0]
B=[]
for i in num:
	if i[0]==mode_value:
		B.append(i[1])
		
B.reverse()
for i in B:
	print(i)

Python: lis=[0 for i in range(100)]
while True:
    try:
        N=int(input())
        lis[N-1] +=1
    except:
        for j in range(100):
            if lis[j]==max(lis):
                print(j+1)
        break

Python: x = []
try:
    while True:
        n = int(input())
        x.append(n)
except EOFError:
    pass

counts = [0]*101

for n in x:
    counts[n]+=1

for n in range(len(x)):
    if counts[n] == max(counts):
        print(n)

Python: lst = [0 for i in range(1,101)]
while True:
    try:
        lst[int(input())]+=1
    except:
        break

m=max(lst)
for i in range(100):
    if m==lst[i]:
        print(i)

Python: # 0028
array = []
while True:
    try:
        a = input()
        if a == '': break
        array.append(int(a))
    except EOFError:
        break
count = list(map(lambda a: array.count(a), set(array)))
modes = list(array[i] for i, x in enumerate(count) if x == max(count))
print(*sorted(modes), sep = '\n')

Python: import sys
if __name__ == '__main__':
    a = [0]*101
    for tmp_line in sys.stdin:
        n = (int)(tmp_line)
        a[n-1] += 1
    b = [i+1 for i,x in enumerate(a) if x == max(a)]
    b.sort()
    for x in b:
        print(x)

Python: import sys
import collections


l = []
for line in sys.stdin:
    l.append(int(line))
counted = collections.Counter(l).most_common()
maxv = counted[0][1]
for k, v in counted:
    if v == maxv:
        print(k)

Python: import sys
a = {}
ma = 0
m = []
for u in sys.stdin:
    i = int(u)
    if not (i in a):
        a[i] = 1
    else:
        a[i] += 1
    if ma <= a[i]:
        if ma < i:
            ma = a[i]
            m.clear()
        m.append(i)
m = sorted(m)
for k in m:
    print(k)

Python: # -*- coding:utf-8 -*-

def main():
    LIST=[]

    while True:
        try:
            N=int(input())
            flag=True
            for item in LIST:
                if item[0]==N:
                    index=LIST.index(item)
                    flag=False

            if flag:
                LIST.append([N,1])
            else:
                LIST[index][1]+=1


        except:
            break
    m=0
    for i in LIST:
        m=max(m,i[1])
    ans=sorted([x for x in LIST if x[1]==m],key=lambda x:x[0])
    for i in ans:
        print(i[0])

    
if __name__ == '__main__':
    main()

Python: import sys
s ,v = [], []
for e in sys.stdin:
    try:
        v[s.index(int(e))] += 1
    except:
        s.append(int(e))
        v.append(1)
c = list(zip(s, v))
c.sort()
c.sort(key = lambda x: x[1], reverse = True)
for i in c:
    if i[1] == c[0][1]:print(i[0])
    else:break

Python: import collections

S = []
while True:
    try:
        s = int(input())
        S.append(s)
    except EOFError:
        break

c = collections.Counter(S)
k = 0
a = []

if len(S) == 0:
    pass
else:
    for i in range(len(c)):
        if c.most_common()[i][1] == c.most_common()[i+1][1]:
            k += 1
        else:
            break
    for i in range(k+1):
        a.append(c.most_common()[i][0])
        a.sort()

    for i in range(len(a)):
        print(a[i])

Python: a = [0] * 101
while 1:
    try:
        a[int(input())] += 1
    except:
        break
m = max(a)
for i, v in enumerate(a):
    if m == v:
        print(i)

Python: def get_input():
    while True:
        try:
            yield ''.join(input())
        except EOFError:
            break

n = list(get_input())
maxi = 0
nums = [0 for i in range(101)]

for j in range(len(n)):
    k = int(n[j])
    nums[int(n[j])] += 1
    maxi = max(maxi, nums[k])

for i in range(101):
    if nums[i] == maxi:
        print(i)

Python: # 0028
array = []
while True:
    try:
        a = input()
        array.append(int(a))
    except EOFError:
        break
s = set(array)
mx = array.count(max(s, key = array.count))
for a in sorted(s):
    if array.count(a) == mx:
        print(a)

Python: x=[]
while True:
    try:
        n=int(input())
        x.append(n)
    except:
        break
c=[0]*101
for i in x:
    c[i]+=1
b=max(c)
for j in range(100):
    if c[j]==b:
        print(j)