#include <bits/stdc++.h>
using namespace std;
char s[302][302];
int t[600][600];
int d0[600][600];
int d1[600][600];
int main() {
  int H, W;
  cin >> H >> W;
  for (int i = 0; i < H; i++) {
    cin >> s[i];
    for (int j = 0; j < W; j++) {
      if (s[i][j] == '#') {
        t[1 + i + j][1 + i + W - j] = 1;
      }
    }
  }
  int S = W + H;
  for (int i = 1; i <= S; i++) {
    for (int j = 1; j <= S; j++) {
      d0[i][j] = d1[i][j] = t[i][j];
      d0[i][j] += d0[i - 1][j];
      d1[i][j] += d1[i][j - 1];
    }
  }
  int ret = 0;
  for (int i = 1; i <= S; i++) {
    for (int j = 1; j <= S; j++) {
      if (!t[i][j]) continue;
      for (int k = j + 1; k <= S; k++) {
        if (!t[i][k]) continue;
        int d = k - j;
        if (i - d >= 1) {
          ret += d1[i - d][k] - d1[i - d][j - 1];
        }
        if (i + d <= S) {
          ret += d1[i + d][k] - d1[i + d][j - 1];
        }
      }
      for (int k = i + 2; k <= S; k++) {
        if (!t[k][j]) continue;
        int d = k - i;
        if (j - d >= 1) {
          ret += d0[k - 1][j - d] - d0[i][j - d];
        }
        if (j + d <= S) {
          ret += d0[k - 1][j + d] - d0[i][j + d];
        }
      }
    }
  }
  cout << ret << endl;
  return 0;
}
