#include <stdio.h>
#include <string.h>
int main(void){
	int n, i, j, k, m, x, w, y, z;
	char str[200001][11];

	/*引いた回数を設定する*/
  while(1){
	  scanf("%d", &n);
		if((1<=n)&&(n<=200000)){
			break;
		}
	}

	/*引いた中身を設定する*/
	for(i=0; i<n; i++){
		while(1){
			w = 0;
			scanf("%c", &str[i]);
			x = strlen(str[i]);
			if((x >= 1)&&(x<=100)){/*文字数が規定以内なら*/
			/*forで文字列の内容検査*/
				for(j=0; j<x; j++){
					if((str[i][j] < "a")||(str[i][j] > "z"))
					w++;/*英小文字以外の文字の個数をカウント*/
				}
			}else{
				w = -1;/*文字数が規定に達していない時の判定*/
			}
			if(w == 0){
				break;
			}
		}
	}

	/*何種類引いたか調査*/
	z = 1;/*最低1種類は引いている*/
	if(n>1){/*2回以上引いている場合*/
		for(i=1; i<n; i++){/*文字列同士を比較していく*/
			y = 0;/*文字列間で違う文字がある場合カウント*/
			for(j=0; j<n-1; j++){
				for(k=0; k<11; k++){
					if(str[i][k] == str[j][k]){
						y++;/*同じ文字を見つけたらカウント*/
					}
				}
			}
			if(y!=11){/*全部文字が同じ時は種類カウントを増やさない*/
				z++;
			}
		}
	}

	printf("%d", z);
	return 0;
}
