using System;
using System.Collections.Generic;
using System.Linq;

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            int n = int.Parse(Console.ReadLine());
            var D = new Dictionary<string, int>();
            for (int i=0; i < n; i++)
            {
                string s = Console.ReadLine();
                char[] c = new char[10];
                for(int j = 0; j < 10; j++)
                {
                    c[j] = s[j];
                }
                var cc=c.OrderBy(x => x).ToArray();
                string ss = "";
                for (int j = 0; j < 10; j++)
                {
                    ss += cc[j].ToString();
                }
                if (D.ContainsKey(ss))
                {
                    D[ss]++;
                }
                else
                {
                    D[ss] = 1;
                }
            }
            long ans = 0;
            foreach(var d in D)
            {
                int x = d.Value;
                ans += (long)x * (x - 1) / 2;
            }
            Console.WriteLine(ans);
        }
    }
}
//TLE
//namespace ConsoleApp1
//{
//    class Program
//    {
//        static void Main(string[] args)
//        {
//            int n = int.Parse(Console.ReadLine());
//            var S = new Dictionary<char,int>[n];
//            var P = new int[n];
//            for(int i = 0; i < n; i++)
//            {
//                S[i] = new Dictionary<char, int>();
//                string s = Console.ReadLine();
//                for(int j = 0; j < 10; j++)
//                {
//                    if (S[i].ContainsKey(s[j])) S[i][s[j]]++;
//                    else S[i][s[j]] = 1;
//                    P[i] += (int)s[j];
//                }
//            }
//            long cnt = 0;
//            for(int i=0;i < n-1; i++)
//            {
//                for(int j = i + 1; j < n; j++)
//                {
//                    if (P[i] == P[j]) cnt++;
//                }
//            }
//            Console.WriteLine(cnt);
//        }
//    }
//}

//TLE
//namespace ConsoleApp1
//{
//    class Program
//    {
//        static void Main(string[] args)
//        {
//            int n = int.Parse(Console.ReadLine());
//            var S = new Dictionary<char, int>[n];
//            for (int i = 0; i < n; i++)
//            {
//                S[i] = new Dictionary<char, int>();
//                for (char c = 'a'; c <= 'z'; c++)
//                {
//                    S[i][c] = 0;
//                }
//                string s = Console.ReadLine();
//                for (int j = 0; j < 10; j++)
//                {
//                    S[i][s[j]]++;
//                }
//            }
//            long cnt = 0;
//            for (int i = 0; i < n - 1; i++)
//            {
//                for (int j = i + 1; j < n; j++)
//                {
//                    bool flag = true;
//                    for (char c = 'a'; c <= 'z'; c++)
//                    {
//                        if (S[i][c] != S[j][c])
//                        {
//                            flag = false;
//                            break;
//                        }
//                    }
//                    if (flag) cnt++;
//                }
//            }
//            Console.WriteLine(cnt);
//        }
//    }
//}

Measured memory_bytes: 57264