package main
import (
"bufio"
"fmt"
"os"
)
type FastScanner struct {
r *bufio.Reader
}
func NewFastScanner() *FastScanner {
return &FastScanner{r: bufio.NewReaderSize(os.Stdin, 1<<20)}
}
func (fs *FastScanner) Next() string {
buf := make([]byte, 0, 16)
for {
b, err := fs.r.ReadByte()
if err != nil {
return string(buf)
}
if b > ' ' {
buf = append(buf, b)
break
}
}
for {
b, err := fs.r.ReadByte()
if err != nil || b <= ' ' {
break
}
buf = append(buf, b)
}
return string(buf)
}
func main() {
in := NewFastScanner()
out := bufio.NewWriterSize(os.Stdout, 1<<20)
defer out.Flush()
var t int
fmt.Sscan(in.Next(), &t)
for ; t > 0; t-- {
var n int
fmt.Sscan(in.Next(), &n)
var cnt [11][11]int64
var ans int64
for i := 0; i < n; i++ {
s := in.Next()
a := int(s[0] - 'a')
b := int(s[1] - 'a')
for x := 0; x < 11; x++ {
if x != a {
ans += cnt[x][b]
}
}
for y := 0; y < 11; y++ {
if y != b {
ans += cnt[a][y]
}
}
cnt[a][b]++
}
fmt.Fprintln(out, ans)
}
}