while True:
 S = input()
 X = {"":1}
 print("#occurrences up-to-3-maximizers #maximizers")
 for c in S:
    Y = {}
    for ss in X: Y[ss+c] = X[ss]
    for ss in Y:
        if ss in X: X[ss] += Y[ss]
        else: X[ss] = Y[ss]

 n = len(S)
 mv = [-1]*(n+1)
 ms = [-1]*(n+1)

 for ss in X:
    if X[ss] > mv[len(ss)]:
        mv[len(ss)] = X[ss]
        ms[len(ss)] = [ss]
    elif X[ss] == mv[len(ss)]:
        ms[len(ss)] += [ss]

 for i in range(n+1):
    print(mv[i], ms[i][0:3], len(ms[i]))
