#include <bits/stdc++.h>
using namespace std;
int main() {
  int H, W;
  cin >> H >> W;
  vector<int> sth[600], stw[600];
  for (int i = 0; i < H; i++) {
    for (int j = 0; j < W; j++) {
      char s;
      cin >> s;
      if (s == '#') {
        sth[i + j].push_back(i - j + 299);
        stw[i - j + 299].push_back(i + j);
      }
    }
  }
  long ans = 0;
  for (int i = 0; i < H + W; i++) {
    for (auto iter = sth[i].begin(); iter != sth[i].end(); iter++) {
      int j = *iter;
      for (auto iter2 = iter; iter2 != sth[i].end(); iter2++) {
        int k = *iter2;
        if (j == k) continue;
        if (i + k - j >= 0) {
          auto l = lower_bound(sth[i + k - j].begin(), sth[i + k - j].end(),
                               min(j, k));
          auto r = upper_bound(sth[i + k - j].begin(), sth[i + k - j].end(),
                               max(j, k));
          ans += r - l;
        }
        if (i + j - k >= 0) {
          auto l = lower_bound(sth[i + j - k].begin(), sth[i + j - k].end(),
                               min(j, k));
          auto r = upper_bound(sth[i + j - k].begin(), sth[i + j - k].end(),
                               max(j, k));
          ans += r - l;
        }
      }
    }
  }
  for (int i = 0; i < 600; i++) {
    for (auto iter = stw[i].begin(); iter != stw[i].end(); iter++) {
      int j = *iter;
      for (auto iter2 = iter; iter2 != stw[i].end(); iter2++) {
        int k = *iter2;
        if (j == k) continue;
        if (i + k - j >= 0 && i + k - j < 600) {
          auto l = upper_bound(stw[i + k - j].begin(), stw[i + k - j].end(),
                               min(j, k));
          auto r = lower_bound(stw[i + k - j].begin(), stw[i + k - j].end(),
                               max(j, k));
          ans += r - l;
        }
        if (i + j - k >= 0 && i + j - k < 600) {
          auto l = upper_bound(stw[i + j - k].begin(), stw[i + j - k].end(),
                               min(j, k));
          auto r = lower_bound(stw[i + j - k].begin(), stw[i + j - k].end(),
                               max(j, k));
          ans += r - l;
        }
      }
    }
  }
  cout << ans << endl;
}
