#abc258g. [abc258_g]Triangle

[abc258_g]Triangle

Problem Statement

You are given a simple undirected graph GG with NN vertices.

GG is given as the NtimesNN \\times N adjacency matrix AA. That is, there is an edge between Vertices ii and jj if Ai,jA_{i,j} is 11, and there is not if Ai,jA_{i,j} is 00.

Find the number of triples of integers (i,j,k)(i,j,k) satisfying 1lei<j<kleN1 \\le i < j < k \\le N such that there is an edge between Vertices ii and jj, an edge between Vertices jj and kk, and an edge between Vertices ii and kk.

Constraints

  • 3leNle30003 \\le N \\le 3000
  • AA is the adjacency matrix of a simple undirected graph GG.
  • All values in input are integers.

Input

Input is given from Standard Input in the following format:

NN A1,1A1,2dotsA1,NA_{1,1}A_{1,2}\\dots A_{1,N} A2,1A2,2dotsA2,NA_{2,1}A_{2,2}\\dots A_{2,N} vdots\\vdots AN,1AN,2dotsAN,NA_{N,1}A_{N,2}\\dots A_{N,N}

Output

Print the answer.


Sample Input 1

4
0011
0011
1101
1110

Sample Output 1

2

(i,j,k)=(1,3,4),(2,3,4)(i,j,k)=(1,3,4),(2,3,4) satisfy the condition.

(i,j,k)=(1,2,3)(i,j,k)=(1,2,3) does not satisfy the condition, because there is no edge between Vertices 11 and 22.

Thus, the answer is 22.


Sample Input 2

10
0000000000
0000000000
0000000000
0000000000
0000000000
0000000000
0000000000
0000000000
0000000000
0000000000

Sample Output 2

0