func_code_string: #include <bits/stdc++.h>   using namespace std;   string a, b, c, s;   map<string, long long> m[3];   long long f, q;   bool sach(string aa) {     if (s.size() >= aa.size() && s.substr(s.size() - aa.size(), aa.size()) == aa)       return true;     return false;   }   void solve(long long i) {     if (sach(a)) {       if (m[i].count(b) || m[i].count(c)) {         cout <<  NO ;         exit(0);       }       f = 1;       m[i][a]++;     }     if (sach(b)) {       if (m[i].count(b) || m[i].count(c)) {         cout <<  NO ;         exit(0);       }       f = 1;       q = 1;       m[i][b]++;     }     if (sach(c)) {       if (m[i].size() && m[i].count(b) == 0) {         cout <<  NO ;         exit(0);       }       m[i][c]++;       f = 1;     }     if (m[1].size() && m[2].size()) {       cout <<  NO ;       exit(0);     }   }   int32_t main() {     ios_base::sync_with_stdio(0);     cin.tie(0);     cout.tie(0);     vector<string> ss;     while (cin >> s) {       f = 0;       ss.push_back(s);       a =  lios , b =  etr , c =  initis ;       solve(1);       a =  liala , b =  etra , c =  inites ;       solve(2);       if (f == 0) {         cout <<  NO ;         exit(0);       }     }     if (ss.size() == 1 || q)       cout <<  YES ;     else       cout <<  NO ;   }   