import java.util.HashSet;
import java.util.Scanner;
import java.util.Set;

public class Balloons
{
	public static void main(String[] args) throws Exception
	{
		// DataInputStream in = new DataInputStream(System.in);
		// BufferedReader in = new BufferedReader(new
		// InputStreamReader(System.in));

		Scanner in = new Scanner(System.in);

		Set<Integer> categories;

		int samples;
		String line;
		while ((line = in.nextLine()) != null)
		{
			samples = Integer.parseInt(line);
			categories = new HashSet<>();			
			
			for (int n = 0; n < samples; n++)
			{
				char[] chars = in.nextLine().toCharArray();

				Category cat = new Category();
				for (int m = 0; m < chars.length; m++)
				{
					cat.putNumber(chToInt(chars[m]));
				}

				categories.add(cat.mask);
			}

			System.out.println(categories.size());
		}

		in.close();
	}

	public static int chToInt(char c)
	{
		return ((int) c) - 48;
	}
}

class Category
{
	public int mask;

	public Category()
	{
		mask = 0;
	}

	public void putNumber(int number)
	{
		mask = mask | (int) Math.pow(2, number - 1);
	}

	public boolean areSame(short another)
	{
		return mask == another;
	}
}
