from operator import itemgetter

s = input().strip()
l = len(s)
dic_s = {}

for i in range(l):
    for j in range(i+1, l+1):
        sub_s = s[i:j]
        dic_s[sub_s] = dic_s.get(sub_s, 0) + 1
#print(len(dic_s))
#a = [[ 0 for i in range(2)] for j in range(len(dic_s))]
a=[]
c = 0
for i, j in dic_s.items():
    b = []
    if j > 1:
        b.append(i)
        b.append(j)
        a.append(b)
        
a.sort(key=itemgetter(0))
for i in a:
    print("{} {}".format(i[0],i[1]))