import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
class TheNameList {
try{
int t
= Integer.
parseInt(b.
readLine()); if(t>=1 && t<=100000){
List<String> n = new ArrayList<String>(t);
for(int i= 0;i<t; ){
String s
= b.
readLine().
toLowerCase(); int len = s.length();
if(len>30 && len<1){
break;
}else {n.add(s);i++;}
}
@Override
return o1.compareToIgnoreCase(o2);
}
});//sorting completed...
for(int j=0; j<t;j++){
int c=1;
int k=j;
for(int i=j+1;i<t;i++){
if(n.get(j).equals(n.get(i))){c++;continue;}
else {j=i-1; break;}
}
p.println(n.get(k)+" "+c);
}
}
}
}
}
aW1wb3J0IGphdmEuaW8uQnVmZmVyZWRSZWFkZXI7CmltcG9ydCBqYXZhLmlvLklPRXhjZXB0aW9uOwppbXBvcnQgamF2YS5pby5JbnB1dFN0cmVhbVJlYWRlcjsKaW1wb3J0IGphdmEuaW8uUHJpbnRXcml0ZXI7CmltcG9ydCBqYXZhLnV0aWwuQXJyYXlMaXN0OwppbXBvcnQgamF2YS51dGlsLkNvbGxlY3Rpb25zOwppbXBvcnQgamF2YS51dGlsLkNvbXBhcmF0b3I7CmltcG9ydCBqYXZhLnV0aWwuTGlzdDsKIApjbGFzcyBUaGVOYW1lTGlzdCB7CiAgICAgICAgcHVibGljIHN0YXRpYyB2b2lkIG1haW4oU3RyaW5nW10gYXJncyl0aHJvd3MgSU9FeGNlcHRpb24gewogICAgICAgICAgICAgICAgdHJ5ewogICAgICAgICAgICAgICAgQnVmZmVyZWRSZWFkZXIgYiA9IG5ldyBCdWZmZXJlZFJlYWRlcihuZXcgSW5wdXRTdHJlYW1SZWFkZXIoU3lzdGVtLmluKSk7CiAgICAgICAgICAgICAgICBQcmludFdyaXRlciBwID0gbmV3IFByaW50V3JpdGVyKFN5c3RlbS5vdXQsIHRydWUpOwogICAgICAgICAgICAgICAgaW50IHQgPSBJbnRlZ2VyLnBhcnNlSW50KGIucmVhZExpbmUoKSk7CiAgICAgICAgICAgICAgICBpZih0Pj0xICYmIHQ8PTEwMDAwMCl7CiAgICAgICAgICAgICAgICAgICAgICAgIExpc3Q8U3RyaW5nPiBuID0gbmV3IEFycmF5TGlzdDxTdHJpbmc+KHQpOwogICAgICAgICAgICAgICAgICAgICAgICBmb3IoaW50IGk9IDA7aTx0OyApewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0cmluZyBzID0gYi5yZWFkTGluZSgpLnRvTG93ZXJDYXNlKCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IGxlbiA9IHMubGVuZ3RoKCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYobGVuPjMwICYmIGxlbjwxKXsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1lbHNlIHtuLmFkZChzKTtpKys7fQogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIENvbGxlY3Rpb25zLnNvcnQobiwgbmV3IENvbXBhcmF0b3I8U3RyaW5nPigpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBPdmVycmlkZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgcHVibGljIGludCBjb21wYXJlKFN0cmluZyBvMSwgU3RyaW5nIG8yKSB7ICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbzEuY29tcGFyZVRvSWdub3JlQ2FzZShvMik7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIH0pOy8vc29ydGluZyBjb21wbGV0ZWQuLi4KICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgZm9yKGludCBqPTA7IGo8dDtqKyspewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgYz0xOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBrPWo7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yKGludCBpPWorMTtpPHQ7aSsrKXsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKG4uZ2V0KGopLmVxdWFscyhuLmdldChpKSkpe2MrKztjb250aW51ZTt9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbHNlIHtqPWktMTsgYnJlYWs7fQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwLnByaW50bG4obi5nZXQoaykrIiAiK2MpOwogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9Y2F0Y2goRXhjZXB0aW9uIGV4KXsKICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAKICAgICAgIAp9