#include <bits/stdc++.h>
char s[1001000], kkk;
int ans[1001000], at = 0;
int main() {
  gets(s);
  int st = 0, ls, ed, flag = 1;
  ans[at++] = 0;
  for (ed = st; s[ed] != '.'; ed++)
    ;
  if (ed > 8 || ed < 1) flag = 0;
  st = ed + 1;
  for (; flag;) {
    ed = st;
    for (; s[ed] && s[ed] != '.'; ed++)
      ;
    if (s[ed] == '.') {
      if (ed - st < 2 || ed - st > 11) {
        flag = 0;
        break;
      } else if (ed - st < 10) {
        ans[at++] = st + 1;
      } else if (ed - st == 10) {
        ans[at++] = st + 2;
      } else if (ed - st == 11) {
        ans[at++] = st + 3;
      }
    } else if (s[ed] == 0) {
      if (ed - st > 3 || ed - st < 1) flag = 0;
      break;
    }
    st = ed + 1;
  }
  if (!flag)
    puts("NO");
  else {
    puts("YES");
    int i;
    for (i = 0; i < at - 1; i++) {
      kkk = s[ans[i + 1]];
      s[ans[i + 1]] = 0;
      puts(s + ans[i]);
      s[ans[i + 1]] = kkk;
    }
    puts(s + ans[i]);
  }
  return 0;
}
