def zichuan(s: str): ans = [] # 储存字串 for i in range(1, len(s) + 1): for j in range(len(s) + 1 - i): ans.append(s[j : i + j]) return ans def ct(s: str, l: list): ct = 0 for x in l: if s == x: ct += 1 return ct while True: try: s = input() ans = zichuan(s) ans0 = [] for x in ans: if ct(x, ans) > 1 and x + " " + str(ct(x, ans)) not in ans0: ans0.append(x + " " + str(ct(x, ans))) ans0.sort() for x in ans0: a = x.split(" ") print(" ".join(a)) except: break