#include <iostream>
#include <map>
#include <vector>
#include <algorithm>

using namespace std;

int main() {
    int n;
    cin >> n; // 读取自然数的个数

    map<long long, int> countMap; // 使用map来存储每个自然数及其出现的次数

    long long num;
    for (int i = 0; i < n; ++i) {
        cin >> num; // 读取每个自然数
        countMap[num]++; // 更新该自然数的出现次数
    }

    // 将map中的元素转移到vector中,以便排序
    vector<pair<long long, int>> countVec(countMap.begin(), countMap.end());

    // 对vector中的元素按照自然数从小到大排序
    sort(countVec.begin(), countVec.end());

    // 输出统计结果
    for (const auto& pair : countVec) {
        cout << pair.first << " " << pair.second << endl;
    }

    return 0;
}
/**************************************************************
	Problem: 2100
	User: admin
	Language: C++
	Result: Wrong Answer
****************************************************************/