最近,极受欢迎的社交网络 Secret Network 发生了一起用户信息泄露事件。在泄露的机密信息中,包含了所有用户的密码。
最近一直在研究计算机安全的年轻学生 Mihael 觉得这件事非常有趣。在对该社交网络进行实验时,他发现了另一个安全漏洞!当你输入任何包含与实际密码相同的子串的字符序列时,登录就会成功。例如,如果某个用户的密码是 abc,当他输入字符串 abc、abcd 或 imaabcnema 中的任意一个时,系统都会成功允许他登录,而输入 axbc 则会登录失败。
Mihael 想要知道存在多少个由不同用户组成的有序对,使得第一个用户使用他自己的密码可以登录为第二个用户。
输入格式
输入的第一行包含一个正整数 $N$ ($1 \le N \le 20\,000$),表示用户的数量。
接下来的 $N$ 行,每行包含一个用户的密码。密码由至少 $1$ 个且至多 $10$ 个英文小写字母组成。
输出格式
输出的第一行,也是唯一的一行,应当包含题目中所求的有序对的数量。
子任务
在价值 $40$ 分的测试用例中,满足 $1 \le N \le 2\,000$。
样例
输入样例 1
3 aaa aa abb
输出样例 1
1
输入样例 2
3 x x xy
输出样例 2
4
输入样例 3
5 mir mirta ta ir t
输出样例 3
6
说明
样例 2 说明:
第一个用户可以登录为第二个用户,第二个用户可以登录为第一个用户,第三个用户既可以登录为第一个用户,也可以登录为第二个用户。