#include <bits/stdc++.h>
using namespace std;
int i, j, k, n, m, x, y, T, ans, big, cas, r[1000], len, stage, num, all;
char s[1000];
bool flag;
int main() {
  scanf("%s", &s);
  len = strlen(s);
  for (i = 'a'; i <= 'z'; i++) r[i] = true;
  for (i = 'A'; i <= 'Z'; i++) r[i] = true;
  for (i = '0'; i <= '9'; i++) r[i] = true;
  r['_'] = true;
  stage = 1;
  num = 0;
  for (i = 0; i <= len; i++) {
    if (stage == 1) {
      if (i == len) {
        printf("NO\n");
        return 0;
      } else if (s[i] == '@') {
        stage = 2;
        if (num > 16 || num <= 0) {
          printf("NO\n");
          return 0;
        }
        num = 0;
        all = 0;
      } else if (!r[s[i]]) {
        printf("NO\n");
        return 0;
      } else {
        num++;
      }
    } else if (stage == 2) {
      if (i == len || s[i] == '/') {
        stage = 3;
        if (num > 16 || num <= 0) {
          printf("NO\n");
          return 0;
        }
        num = 0;
        if (all > 32 || all <= 0) {
          printf("NO\n");
          return 0;
        }
        all = 0;
        if (i == len) {
          printf("YES\n");
          return 0;
        }
      } else if (s[i] == '.') {
        if (num > 16 || num <= 0) {
          printf("NO\n");
          return 0;
        }
        num = 0;
        all++;
      } else if (!r[s[i]]) {
        printf("NO\n");
        return 0;
      } else {
        num++;
        all++;
      }
    } else {
      if (i == len) {
        if (num > 16 || num <= 0) {
          printf("NO\n");
          return 0;
        }
        printf("YES\n");
      } else if (!r[s[i]]) {
        printf("NO\n");
        return 0;
      } else {
        num++;
      }
    }
  }
  return 0;
}
