file_name = []
wrong_raw = []
result = []
while True:
    try:
        a = input()
        a = a.split('\\')#以'\'作为分隔,\\是转义的\
        b = a[-1]#最后一个部分是文件名(不是路径) 错误的行数
        b = b.split(' ')#将文件名(不是路径)和错误的行数分开
        if(len(b[0]) > 16):#文件名>16则取最后的16位字符
           b[0] = b[0][-16:]
        file_name.append(b[0])#处理后的文件名
        wrong_raw.append(b[1])#行数
    except:
        break
s = {}
for i in range(len(file_name)):
    if(file_name[i]+' '+wrong_raw[i] in s):#文件名+行数为key,只有这两个全相同时认为是同一个错误,那么出现的次数+1
        s[file_name[i]+' '+wrong_raw[i]] += 1
    else:#没出现则添加进去
        s[file_name[i]+' '+wrong_raw[i]] = 1
for key,value in s.items():#按照输出的格式输出
    result.append(key + ' ' + str(value))
    output = result[-8:]#只取最后八个
for i in output:
    print(i)