#include<bits/stdc++.h>
using namespace std;
bool comp(pair<int, string> a, pair<int, string> b) {
if(a.first != b.first)return a.first>b.first;
return (a.second).compare(b.second)<0;
}
int main() {
string s;
map<string, int> has;
while(std::getline(cin,s)) {
has[s]++;
}
vector<pair<int, string> > v;
for(auto it=has.begin();it!=has.end();it++) {
v.push_back({it->second, it->first});
}
sort(v.begin(), v.end(), comp);
int cnt=1;
for(pair<int, string> p: v) {
cout<<cnt++<<". "<<p.second<<" ("<<p.first<<")\n";
// cout<<p.second<<" ("<<p.first<<")\n";
}
return 0;
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmJvb2wgY29tcChwYWlyPGludCwgc3RyaW5nPiBhLCBwYWlyPGludCwgc3RyaW5nPiBiKSB7CglpZihhLmZpcnN0ICE9IGIuZmlyc3QpcmV0dXJuIGEuZmlyc3Q+Yi5maXJzdDsKCXJldHVybiAoYS5zZWNvbmQpLmNvbXBhcmUoYi5zZWNvbmQpPDA7Cn0KCmludCBtYWluKCkgewoJc3RyaW5nIHM7CgltYXA8c3RyaW5nLCBpbnQ+IGhhczsKCXdoaWxlKHN0ZDo6Z2V0bGluZShjaW4scykpIHsKCQloYXNbc10rKzsKCX0KCXZlY3RvcjxwYWlyPGludCwgc3RyaW5nPiA+IHY7Cglmb3IoYXV0byBpdD1oYXMuYmVnaW4oKTtpdCE9aGFzLmVuZCgpO2l0KyspIHsKCQl2LnB1c2hfYmFjayh7aXQtPnNlY29uZCwgaXQtPmZpcnN0fSk7Cgl9Cglzb3J0KHYuYmVnaW4oKSwgdi5lbmQoKSwgY29tcCk7CglpbnQgY250PTE7Cglmb3IocGFpcjxpbnQsIHN0cmluZz4gcDogdikgewoJCWNvdXQ8PGNudCsrPDwiLiAiPDxwLnNlY29uZDw8IiAoIjw8cC5maXJzdDw8IilcbiI7CgkJLy8gY291dDw8cC5zZWNvbmQ8PCIgKCI8PHAuZmlyc3Q8PCIpXG4iOwoJfQoJcmV0dXJuIDA7Cn0=