import sys

def solve():
    input_data = sys.stdin.read().split()
    
    if not input_data:
        return

    iterator = iter(input_data)
    
    try:
        n = int(next(iterator))
    except StopIteration:
        return

    # id -> 出现次数
    count_map = {}
    # id -> 时间戳 (题目保证相同id时间戳相同,只需记录一次)
    time_map = {}

    # 剩余的所有数字都是成对的 (id, t)
    while True:
        try:
            id_str = next(iterator)
            t_str = next(iterator)
            
            photo_id = int(id_str)
            timestamp = int(t_str)
            
            # 更新计数
            if photo_id in count_map:
                count_map[photo_id] += 1
            else:
                count_map[photo_id] = 1
                time_map[photo_id] = timestamp
                
        except StopIteration:
            break

    # 筛选重复的照片 (出现次数 > 1)
    duplicates = []
    for pid, count in count_map.items():
        if count > 1:
            t = time_map[pid]
            duplicates.append((t, pid, count))

    # 按照时间戳 t 升序排序
    # 题目保证排序结果唯一,所以不需要考虑时间戳相同的情况如何处理id顺序
    duplicates.sort(key=lambda x: x[0])

    # 构建输出结果
    result = []
    for _, pid, count in duplicates:
        result.append(str(pid))
        result.append(str(count))

    print(" ".join(result))

if __name__ == "__main__":
    solve()