import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Set;

public class Balloon {

	/**
	 * @param args
	 * @throws IOException
	 */
	public static void main(String[] args) throws IOException {
		BufferedReader reader = new BufferedReader(new InputStreamReader(
				System.in));
		String pocetS = reader.readLine();
		while (pocetS != null) {
			int pocet = Integer.parseInt(pocetS);
			List<Set<Character>> mnoziny = new ArrayList<>();
			for (int i = 0; i < pocet; i++) {
				String vstup = reader.readLine();
				Set<Character> trainee = new HashSet<>();
				for (int j = 0; j < vstup.length(); j++) {
					trainee.add(vstup.charAt(j));
				}
				boolean pridat = true;
				for (Set<Character> m : mnoziny) {
					if (trainee.size() == m.size() && m.containsAll(trainee)) {
						pridat = false;
						break;
					}
				}
				if (pridat) {
					mnoziny.add(trainee);
				}
			}
			System.out.println(mnoziny.size());
			pocetS = reader.readLine();
		}
	}

}
