/**
*
*filename:poj1001.java
*author:panzhizhou
*date:2013-4-16
*/
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileWriter;
import java.io.IOException;
import java.lang.reflect.Array;
import java.math.BigDecimal;
import java.math.BigInteger;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Scanner;
import java.util.Set;
import java.util.TreeMap;
public class Main {
private static final Integer NULL = null;
private static final Integer One = (Integer) 1;
public static void main(String args[]) throws IOException {
// Scanner filecin=new Scanner(new
// File("E:\\poj_input_output\\1001.txt"));
Scanner filecin = new Scanner(System.in);
Map<String, Integer> maplist = new TreeMap<String, Integer>();
Map<String, Integer> ans = new TreeMap<String, Integer>();
work(maplist);
int ncase = filecin.nextInt();
String blank = filecin.nextLine();
boolean flag = true;
while (ncase-- > 0) {
String temp = filecin.nextLine();
String aftdeal = afterDeal(temp, maplist);
// System.out.println(k+":"+aftdeal);
ans.put(aftdeal,
ans.containsKey(aftdeal) == false ? One : Integer
.valueOf(ans.get(aftdeal) + 1));
}
Iterator<String> iter = ans.keySet().iterator();
while (iter.hasNext()) {
String str = iter.next();
if (ans.get(str) > 1) {
System.out.println(str + " " + ans.get(str));
flag = false;
}
}
if (flag == true)
System.out.println("No duplicates.");
}
/**
* @param temp
* @return
*/
private static String afterDeal(String temp, Map<String, Integer> maplist) {
// TODO Auto-generated method stub
int len = temp.length();
String ans = "";
for (int i = 0; i < len; i++) {
if (temp.charAt(i) == '-')
continue;
if (temp.charAt(i) >= 65 && temp.charAt(i) <= 96) {
char ch = temp.charAt(i);
String str = String.valueOf(ch);
ans += maplist.get(str);
} else {
char ch = temp.charAt(i);
String str = String.valueOf(ch);
ans += str;
}
}
String presub = ans.substring(0, 3);
presub += "-";
presub += ans.substring(3, ans.length());
return presub;
}
/**
* @param maplist
*/
private static void work(Map<String, Integer> maplist) {
maplist.put("A", 2);
maplist.put("B", 2);
maplist.put("C", 2);
maplist.put("D", 3);
maplist.put("E", 3);
maplist.put("F", 3);
maplist.put("G", 4);
maplist.put("H", 4);
maplist.put("I", 4);
maplist.put("J", 5);
maplist.put("K", 5);
maplist.put("L", 5);
maplist.put("M", 6);
maplist.put("N", 6);
maplist.put("O", 6);
maplist.put("P", 7);
maplist.put("R", 7);
maplist.put("S", 7);
maplist.put("T", 8);
maplist.put("U", 8);
maplist.put("V", 8);
maplist.put("W", 9);
maplist.put("X", 9);
maplist.put("Y", 9);
}
}