ある工場では，各営業所から製品生産の注文を受けている． 前日の注文をまとめて，各製品の生産合計を求めたい．  入力ファイルの１行目には注文データの数 n が書いてあり， 続く n 行には製品名と注文数が空白で区切られて書いてある． 製品名は5文字以内の英大文字で書かれている． 注文データには同じ製品が含まれていることもあり，順序はバラバラである．  この注文データの中に現れる同じ製品の注文数を合計し， 出力ファイルに製品名と合計を空白を区切り文字として出力しなさい． ただし，製品名に次の順序を付けて，その順で出力すること．  順序：文字の長さの小さい順に，同じ長さのときは，前から比べて 最初に異なる文字のアルファベット順とする．  入力データにおける製品数，注文数とその合計のどれも106以下である．  出力ファイルにおいては， 出力の最後の行にも改行コードを入れること．
from collections import Counter
order = Counter()
N = int(input())
for i in range(N):
    A = input().split()
    name,quantity = A[0],int(A[1])
    order[name] += quantity
po = sorted(order.items(),key=lambda x:len(x[0]))
pu = sorted(po,key=lambda x:x[0])
for j,k in pu:
    print(j,k)
from collections import Counter
order = Counter()
N = int(input())
for i in range(N):
    A = input().split()
    name,quantity = A[0],int(A[1])
    order[name] += quantity
po = sorted(order.items(),key=lambda x:x[0])
pu = sorted(po,key=lambda x:len(x[0]))
for j,k in pu:
    print(j,k)