import java.util.*;
public class Main {
	public static void main(String[] args){
		Scanner sc = new Scanner(System.in);
    
		// 整数の入力
		int n = sc.nextInt();
       
        ArrayList<String> sList = new ArrayList<>();
      
		for (int i = 0; i < n; i++) {
          String s = sc.next();
          String[] chars = s.split("");
          Arrays.sort(chars);
          String master = "";
          for (String part : chars) {
            master += part;
          }
          sList.add(master);
        }
        Collections.sort(sList);
       
        long ans = 0;
        while (sList.size() > 1) {
          String sample = sList.get(0);
          sList.remove(0);
          long count = 0;
          while(sList.get(0).equals(sample)) {
            ans++;
            count++;
            sList.remove(0);
            if (count > 1) {
            ans += count - 1;
            }
            if (sList.size() == 0) {
              break;
            }
          }
        }      
    
		// 出力
		System.out.println(ans);
	}
}
/tmp/hf-datasets-cache/medium/datasets/42704881117311-config-parquet-and-info-qiankunmu-Project_CodeNet-896c9d36/hub/datasets--qiankunmu--Project_CodeNet_Python800_and_Java250/snapshots/c899fde44a77ba1cc14973ed3de064e4ff3aadc7/Project_CodeNet_Java250.tar.gz