Mirko 和 Slavko 正在玩一个新游戏,叫做“Trojke”(三元组)。首先,他们用粉笔在马路上画一个 $N \times N$ 的正方形网格。然后,他们在其中一些方格中写上字母。网格中每个字母最多出现一次。
游戏的目标是尽可能快地找到共线的三个字母。如果有一条直线同时穿过这三个方格的中心,则认为这三个字母在同一条直线上。
过了一会儿,寻找新的三元组变得越来越困难。Mirko 和 Slavko 需要一个程序来计算所有三元组的数量,以便他们知道游戏是否已经结束,或者他们是否需要继续寻找。
输入格式
第一行包含一个整数 $N$ ($3 \le N \le 100$),表示网格的维度。
接下来的 $N$ 行,每行包含 $N$ 个字符,描述网格——大写字母和字符 .(表示空方格)。
输出格式
在单行中输出三元组的数量。
样例
输入 1
4 ...D ..C. .B.. A...
输出 1
4
输入 2
5 ..T.. A.... .FE.R ....X S....
输出 2
3
输入 3
10 ....AB.... ..C....D.. .E......F. ...G..H... I........J K........L ...M..N... .O......P. ..Q....R.. ....ST....
输出 3
0