#include <bits/stdc++.h>
using namespace std;
template <typename T>
ostream& operator<<(ostream& os, const vector<T>& v) {
  os << "[";
  for (auto u : v) {
    os << u;
    if (u != *v.rbegin()) os << ",";
  }
  os << "]" << endl;
  return os;
}
template <typename T>
ostream& operator<<(ostream& os, const set<T>& s) {
  os << "{";
  for (auto u : s) {
    os << u;
    if (u != *s.rbegin()) os << ",";
  }
  os << "}" << endl;
  return os;
}
template <typename T, typename U>
ostream& operator<<(ostream& os, const pair<T, U>& p) {
  os << "{";
  os << p.first << "," << p.second;
  os << "}" << endl;
  return os;
}
template <typename T, typename U>
ostream& operator<<(ostream& os, const map<T, U>& mp) {
  for (auto p : mp) os << p.first << " : " << p.second << endl;
  return os;
}
int32_t main() {
  cin.tie(0);
  ios_base::sync_with_stdio(0);
  long long t = 1;
  while (t--) {
    long long h, w;
    cin >> h >> w;
    string s[h];
    for (long long i = 0; i < h; i++) {
      cin >> s[i];
    }
    long long f1 = 0, f2 = 0;
    for (long long i = 1; i < h - 1; i++) {
      for (long long j = 1; j < w - 1; j++) {
        if (f1 == 0 && s[i][j] == '*' && s[i + 1][j] == '*' &&
            s[i - 1][j] == '*' && s[i][j - 1] == '*' && s[i][j + 1] == '*') {
          s[i][j] = '.';
          long long p = i + 1;
          long long p1 = j;
          while (p < h && s[p][p1] == '*') {
            s[p][p1] = '.';
            p++;
          }
          p = i;
          p1 = j + 1;
          while (p1 < w && s[p][p1] == '*') {
            s[p][p1] = '.';
            p1++;
          }
          p = i - 1;
          p1 = j;
          while (p >= 0 && s[p][p1] == '*') {
            s[p][p1] = '.';
            p--;
          }
          p = i;
          p1 = j - 1;
          while (p1 >= 0 && s[p][p1] == '*') {
            s[p][p1] = '.';
            p1--;
          }
          f1 = 1;
        }
        if (s[i][j] == '*' && f1) {
          f2 = 1;
        }
      }
    }
    for (long long i = 0; i < h; i++) {
      for (long long j = 0; j < w; j++) {
        if (s[i][j] == '*') f2 = 1;
      }
    }
    if (f1 && !f2) {
      cout << "YES" << endl;
    } else
      cout << "NO" << endl;
  }
  return 0;
}
