#include <bits/stdc++.h>
using namespace std;
int main() {
  int w, h;
  cin >> h >> w;
  vector<string> pic(h);
  for (int i = 0; i < h; i++) {
    cin >> pic[i];
  }
  vector<vector<bool>> plus(h, vector<bool>(w, false));
  int con = -1;
  for (int i = 1; i < h - 1; i++) {
    for (int j = 1; j < w - 1; j++) {
      if (pic[i][j] == '*' && pic[i - 1][j] == '*' && pic[i + 1][j] == '*' &&
          pic[i][j + 1] == '*' && pic[i][j - 1] == '*') {
        con = 0;
        int up = i, down = i, lft = j, rt = j;
        while (up >= 0 && pic[up][j] == '*') plus[up--][j] = true;
        while (down < h && pic[down][j] == '*') plus[down++][j] = true;
        while (lft >= 0 && pic[i][lft] == '*') plus[i][lft--] = true;
        while (rt < w && pic[i][rt] == '*') plus[i][rt++] = true;
        for (int xx = 0; xx < h; xx++) {
          for (int yy = 0; yy < w; yy++) {
            if (plus[xx][yy] != (pic[xx][yy] == '*')) {
              cout << "NO" << endl;
              return 0;
            }
          }
        }
        cout << "YES" << endl;
        return 0;
      }
    }
  }
  cout << "NO" << endl;
  return 0;
}
