#include <bits/stdc++.h>
using namespace std;
string s;
string sub(int x, int y) {
  string ret = "";
  for (int i = x; i < y; i++) ret += s[i];
  return ret;
}
int main() {
  while (cin >> s) {
    int st = 0, en;
    for (en = st; en < s.length() && s[en] != '.'; en++)
      ;
    if (en == st || en - st > 8) {
      cout << "NO\n";
      continue;
    }
    vector<string> x, y;
    x.push_back(sub(st, en));
    bool wa = 0;
    while (1) {
      st = en + 1;
      for (en = st; en < s.length() && s[en] != '.'; en++)
        ;
      if (en == s.length()) {
        if (s[en] == '.' || en == st || en - st > 3) {
          cout << "NO\n";
          wa = 1;
        } else
          y.push_back(sub(st, en));
        break;
      }
      if (en - st < 2 || en - st > 11) {
        cout << "NO\n";
        wa = 1;
        break;
      }
      if (en - st < 10) {
        y.push_back(sub(st, st + 1));
        x.push_back(sub(st + 1, en));
      } else {
        y.push_back(sub(st, st + 3));
        x.push_back(sub(st + 3, en));
      }
    }
    if (wa) continue;
    cout << "YES\n";
    for (int i = 0; i < x.size(); i++) cout << x[i] << "." << y[i] << endl;
  }
  return 0;
}
