import collections
# 记录最多8条错误记录,循环记录,最后只用输出最后出现的八条错误记录
# 最后一个斜杠后面的带后缀名的部分(保留最后16位)和行号完全匹配的记录才做算是”相同“的错误记录
# 超过16个字符的文件名称,只记录文件的最后有效16个字符
# 输入的文件可能带路径,记录文件名称不能带路径。
# 也就是说,哪怕不同路径下的文件,如果它们的名字的后16个字符相同,也被视为相同的错误记录
# 循环记录时,只以第一次出现的顺序为准,后面重复的不会更新它的出现时间,仍以第一次为准
record = collections.defaultdict(int) # 用int类型参数来初始化默认字典中的元素value为0
name_order = []
while True:
try:
line = input().strip().split(' ')
path = line[0]
row_num = line[1]
name = path.split('\\')[-1]
if len(name) > 16:
name = name[-16:]
error = name + ' ' + row_num
record[error] += 1
if record[error] == 1:
name_order.append(error)
except:
break
for r in name_order[-8:]:
print(r, record[r])