#include <bits/stdc++.h>
using namespace std;
string pic[555];
int main() {
  int h, w;
  cin >> h >> w;
  for (int i = 0; i < h; i++) cin >> pic[i];
  int x = -1;
  for (int yi = 0; yi < h; yi++) {
    for (int i = 0; i < w; i++) {
      if (pic[yi][i] == '*') {
        x = i;
        goto n1;
      }
    }
  }
n1:;
  int y = -1;
  for (int xi = 0; xi < w; xi++) {
    for (int i = 0; i < h; i++) {
      if (pic[i][xi] == '*') {
        y = i;
        goto n2;
      }
    }
  }
n2:;
  if (x <= 0 || y <= 0 || x >= w - 1 || y >= h - 1) {
    goto fail;
  }
  if (pic[y][x] != '*') {
    goto fail;
  }
  pic[y][x] = '+';
  for (int i = x - 1; i >= 0; i--) {
    if (pic[y][i] != '*') {
      if (i == x - 1) goto fail;
      break;
    }
    pic[y][i] = '+';
  }
  for (int i = x + 1; i < w; i++) {
    if (pic[y][i] != '*') {
      if (i == x + 1) goto fail;
      break;
    }
    pic[y][i] = '+';
  }
  for (int i = y - 1; i >= 0; i--) {
    if (pic[i][x] != '*') {
      if (i == y - 1) goto fail;
      break;
    }
    pic[i][x] = '+';
  }
  for (int i = y + 1; i < h; i++) {
    if (pic[i][x] != '*') {
      if (i == y + 1) goto fail;
      break;
    }
    pic[i][x] = '+';
  }
  for (int y = 0; y < h; y++) {
    for (int x = 0; x < w; x++) {
      if (pic[y][x] == '*') goto fail;
    }
  }
  cout << "YES\n";
  return 0;
fail:
  cout << "NO\n";
  return 0;
}
