package main

import (
	"bufio"
	"fmt"
	"os"
	"sort"
)

func main() {
	in := bufio.NewReader(os.Stdin)

	var n int
	fmt.Fscan(in, &n)

	// 用 map 合并相同索引的值
	m := make(map[int]int)

	for i := 0; i < n; i++ {
		var x, y int
		fmt.Fscan(in, &x, &y)
		m[x] += y
	}

	// 取出所有索引并排序
	keys := make([]int, 0, len(m))
	for k := range m {
		keys = append(keys, k)
	}
	sort.Ints(keys)

	// 按索引升序输出


	for _, k := range keys {
		fmt.Println(k, m[k])
	}
}