#include <bits/stdc++.h>
using namespace std;
int n, m;
int ans = 0;
char c[512][512];
int b[512][512];
int f[512][512];
int t[512][512];
int calc() {
  int cnt = 0;
  for (int i = 0; i < n - 1; i++)
    for (int j = 0; j < m - 1; j++) {
      if (b[i][j] && !b[i + 1][j] && !b[i + 1][j + 1] && !b[i][j + 1])
        f[i][j] = 1;
      else if (!b[i][j] && !b[i + 1][j] && !b[i + 1][j + 1] && b[i][j + 1])
        f[i][j] = 2;
      else if (!b[i][j] && b[i + 1][j] && !b[i + 1][j + 1] && !b[i][j + 1])
        f[i][j] = 3;
      else if (!b[i][j] && !b[i + 1][j] && b[i + 1][j + 1] && !b[i][j + 1])
        f[i][j] = 4;
      else if (b[i][j] && !b[i + 1][j] && !b[i + 1][j + 1] && b[i][j + 1])
        f[i][j] = 5;
      else if (b[i][j] && b[i + 1][j] && !b[i + 1][j + 1] && !b[i][j + 1])
        f[i][j] = 6;
      else if (!b[i][j] && !b[i + 1][j] && b[i + 1][j + 1] && b[i][j + 1])
        f[i][j] = 7;
      else if (!b[i][j] && b[i + 1][j] && b[i + 1][j + 1] && !b[i][j + 1])
        f[i][j] = 8;
      else if (b[i][j] && b[i + 1][j] && b[i + 1][j + 1] && b[i][j + 1])
        f[i][j] = 9;
      else if (b[i][j] && !b[i + 1][j] && b[i + 1][j + 1] && !b[i][j + 1])
        f[i][j] = 10;
      else if (!b[i][j] && b[i + 1][j] && !b[i + 1][j + 1] && b[i][j + 1])
        f[i][j] = 11;
      else if (!b[i][j] && b[i + 1][j] && b[i + 1][j + 1] && b[i][j + 1])
        f[i][j] = 12;
      else if (b[i][j] && b[i + 1][j] && b[i + 1][j + 1] && !b[i][j + 1])
        f[i][j] = 13;
      else if (b[i][j] && !b[i + 1][j] && b[i + 1][j + 1] && b[i][j + 1])
        f[i][j] = 14;
      else if (b[i][j] && b[i + 1][j] && !b[i + 1][j + 1] && b[i][j + 1])
        f[i][j] = 15;
      else if (!b[i][j] && !b[i + 1][j] && !b[i + 1][j + 1] && !b[i][j + 1])
        f[i][j] = 16;
    }
  for (int d = 2; d * 2 <= n && d * 2 <= m; d *= 2) {
    memcpy(t, f, sizeof(f));
    memset(f, 0, sizeof(f));
    for (int i = 0; i <= n - d * 2; i++)
      for (int j = 0; j <= m - d * 2; j++) {
        if (t[i][j] == 9 && t[i][j + d] == 1 && t[i + d][j] == 1 &&
            t[i + d][j + d] == 1)
          f[i][j] = 1, cnt++;
        else if (t[i][j] == 2 && t[i][j + d] == 9 && t[i + d][j] == 2 &&
                 t[i + d][j + d] == 2)
          f[i][j] = 2, cnt++;
        else if (t[i][j] == 3 && t[i][j + d] == 3 && t[i + d][j] == 9 &&
                 t[i + d][j + d] == 3)
          f[i][j] = 3, cnt++;
        else if (t[i][j] == 4 && t[i][j + d] == 4 && t[i + d][j] == 4 &&
                 t[i + d][j + d] == 9)
          f[i][j] = 4, cnt++;
        else if (t[i][j] == 9 && t[i][j + d] == 9 && t[i + d][j] == 5 &&
                 t[i + d][j + d] == 5)
          f[i][j] = 5, cnt++;
        else if (t[i][j] == 9 && t[i][j + d] == 6 && t[i + d][j] == 9 &&
                 t[i + d][j + d] == 6)
          f[i][j] = 6, cnt++;
        else if (t[i][j] == 7 && t[i][j + d] == 9 && t[i + d][j] == 7 &&
                 t[i + d][j + d] == 9)
          f[i][j] = 7, cnt++;
        else if (t[i][j] == 8 && t[i][j + d] == 8 && t[i + d][j] == 9 &&
                 t[i + d][j + d] == 9)
          f[i][j] = 8, cnt++;
        else if (t[i][j] == 9 && t[i][j + d] == 9 && t[i + d][j] == 9 &&
                 t[i + d][j + d] == 9)
          f[i][j] = 9, cnt++;
        else if (t[i][j] == 9 && t[i][j + d] == 10 && t[i + d][j] == 10 &&
                 t[i + d][j + d] == 9)
          f[i][j] = 10, cnt++;
        else if (t[i][j] == 11 && t[i][j + d] == 9 && t[i + d][j] == 9 &&
                 t[i + d][j + d] == 11)
          f[i][j] = 11, cnt++;
        else if (t[i][j] == 12 && t[i][j + d] == 9 && t[i + d][j] == 9 &&
                 t[i + d][j + d] == 9)
          f[i][j] = 12, cnt++;
        else if (t[i][j] == 9 && t[i][j + d] == 13 && t[i + d][j] == 9 &&
                 t[i + d][j + d] == 9)
          f[i][j] = 13, cnt++;
        else if (t[i][j] == 9 && t[i][j + d] == 9 && t[i + d][j] == 14 &&
                 t[i + d][j + d] == 9)
          f[i][j] = 14, cnt++;
        else if (t[i][j] == 9 && t[i][j + d] == 9 && t[i + d][j] == 9 &&
                 t[i + d][j + d] == 15)
          f[i][j] = 15, cnt++;
        else if (t[i][j] == 16 && t[i][j + d] == 16 && t[i + d][j] == 16 &&
                 t[i + d][j + d] == 16)
          f[i][j] = 16, cnt++;
      }
  }
  return cnt;
}
int main() {
  scanf("%d%d\n", &n, &m);
  for (int i = 0; i < n; i++) gets(c[i]);
  for (int i = 0; i < n; i++)
    for (int j = 0; j < m; j++)
      if (c[i][j] == '*') b[i][j] = true;
  ans += calc();
  printf("%d\n", ans);
  return 0;
}
