You are given a *n* × *m* field consisting only of periods ('.') and asterisks ('*'). Your task is to count all right triangles with two sides parallel to the square sides, whose vertices are in the centers of '*'-cells. A right triangle is a triangle in which one angle is a right angle (that is, a 90 degree angle).
The first line contains two positive integer numbers *n* and *m* (1 ≤ *n*, *m* ≤ 1000). The following *n* lines consist of *m* characters each, describing the field. Only '.' and '*' are allowed.
input_str = input
n, m = map(int, input_str().split())
grid = [list(input_str()) for _ in range(n)]
row_counts = [row.count('*') for row in grid]
column_counts = [col.count('*') for col in zip(*grid)]
total = 0
for i in range(n):
    for j in range(m):
        if grid[i][j] == '*':
            total += (row_counts[i] - 1) * (column_counts[j] - 1)
print(total)
