#include <bits/stdc++.h>
using namespace std;
int main() {
  ios::sync_with_stdio(false), cin.tie(0);
  int m, n;
  cin >> n >> m;
  vector<string> a(n + 1);
  bool dd[111][111];
  int len[111][111];
  for (int i = 0; i <= n; i++)
    for (int j = 0; j <= m; j++) dd[i][j] = false, len[i][j] = 0;
  for (int i = 0; i <= n; i++) cin >> a[i];
  int res = 0;
  for (int i = 0; i < n; i++)
    for (int j = 0; j < m; j++)
      if (a[i][j] == '*') {
        int u, d, l, r, cnt = 0;
        u = d = i;
        l = r = j;
        while (1) {
          u--, d++, l--, r++;
          if (u < 0 || d >= n || l < 0 || r >= m || a[u][j] == '.' ||
              a[d][j] == '.' || a[i][l] == '.' || a[i][r] == '.')
            break;
          dd[i][j] = dd[u][j] = dd[d][j] = dd[i][l] = dd[i][r] = true;
          ++cnt;
        }
        if (cnt > 0) res++;
        len[i][j] = cnt;
      }
  bool kt = true;
  for (int i = 0; i < n; i++)
    for (int j = 0; j < m; j++) {
      if (a[i][j] == '*' && !dd[i][j]) kt = false;
    }
  if (!kt)
    cout << -1;
  else {
    cout << res << endl;
    for (int i = 0; i < n; i++)
      for (int j = 0; j < m; j++)
        if (a[i][j] == '*' && len[i][j] > 0)
          cout << i + 1 << ' ' << j + 1 << ' ' << len[i][j] << endl;
  }
  return 0;
}
