#include <bits/stdc++.h>
using namespace std;
int main() {
  int n, m;
  cin >> n >> m;
  char a[n][m];
  for (int i = 0; i < n; i++)
    for (int j = 0; j < m; j++) cin >> a[i][j];
  vector<pair<int, int>> v;
  for (int i = 0; i < n; i++) {
    for (int j = 0; j < m; j++) {
      if (a[i][j] == '*') v.push_back({i, j});
    }
  }
  if (v.size() >= n + m)
    cout << "NO";
  else {
    int count = v.size();
    if (count == 0) {
      cout << "YES" << endl;
      cout << 1 << " " << 1;
    } else if (count == 1) {
      cout << "YES" << endl;
      cout << v[0].first + 1 << " " << v[0].second + 1;
    } else if (count == 2) {
      cout << "YES" << endl;
      cout << v[0].first + 1 << " " << v[1].second + 1;
    } else {
      int x = v[0].first;
      int y = v[0].second;
      int i;
      int x1, y1;
      for (i = 1; i < count; i++) {
        if (v[i].first != x && v[i].second != y) {
          x1 = v[i].first;
          y1 = v[i].second;
          break;
        }
      }
      if (i == count) {
        cout << "YES" << endl;
        cout << x + 1 << " " << y + 1;
      } else {
        for (i = 1; i < count; i++) {
          if (v[i].first == x || v[i].second == y1)
            continue;
          else
            break;
        }
        if (i == count) {
          cout << "YES" << endl;
          cout << x + 1 << " " << y1 + 1;
        } else {
          for (i = 1; i < count; i++) {
            if (v[i].first == x1 || v[i].second == y)
              continue;
            else
              break;
          }
          if (i == count) {
            cout << "YES" << endl;
            cout << x1 + 1 << " " << y + 1;
          } else
            cout << "NO";
        }
      }
    }
  }
}
