func_code_string: #include <bits/stdc++.h>   using namespace std;   string s;   string name;   string hostname;   string res;   int is_good(char c) {     if (c -  a  >= 0 && c -  a  < 26) return 1;     if (c -  A  >= 0 && c -  A  < 26) return 1;     if (c -  0  >= 0 && c -  0  < 10) return 1;     if (c ==  _ ) return 1;     return 0;   }   int main() {     cin >> s;     int tk = 0;     int cl1 = 0;     int cl2 = 0;     for (int i = 0; i < s.length(); i++) {       if (s[i] ==  @ ) {         if (tk != 0) {           printf( NO n );           return 0;         }         tk = 1;         cl1++;         continue;       }       if (s[i] ==  / ) {         cl2++;         if (tk != 1) {           printf( NO n );           return 0;         }         tk = 2;         continue;       }       if (tk == 0) name += s[i];       if (tk == 1) hostname += s[i];       if (tk == 2) res += s[i];     }     if (res ==    && cl2 != 0) {       printf( NO n );       return 0;     }     if (name ==    || hostname ==   ) {       printf( NO n );       return 0;     }     if (name.length() > 16 || hostname.length() > 32 || res.length() > 16) {       printf( NO n );       return 0;     }     for (int i = 0; i < name.length(); i++)       if (!is_good(name[i])) {         printf( NO n );         return 0;       }     for (int i = 0; i < res.length(); i++)       if (!is_good(res[i])) {         printf( NO n );         return 0;       }     int tl = 0;     for (int i = 0; i < hostname.length(); i++)       if (hostname[i] ==  . ) {         if (tl > 16 || tl == 0) {           printf( NO n );           return 0;         }         tl = 0;         continue;       } else if (!is_good(hostname[i])) {         printf( NO n );         return 0;       } else         tl++;     if (tl > 16 || tl == 0) {       printf( NO n );       return 0;     }     if (cl1 > 1 || cl2 > 1) {       printf( NO n );       return 0;     }     printf( YES n );     return 0;   }   