func_code_string: #include <bits/stdc++.h>   using namespace std;   string proc(char *a) {     int n = strlen(a);     char s[100];     int i = 0, j = 0;     while (i < n) {       if (a[i] ==  u )         s[j++] =  o , s[j++] =  o ;       else         s[j++] = a[i];       i++;     }     s[j] =   0 ;     strcpy(a, s);     n = j;     i = j = 0;     while (i < n) {       if (i < n - 1 && a[i] == a[i + 1] && a[i] ==  o )         s[j++] =  u , i += 2;       else         s[j++] = a[i++];     }     s[j] =   0 ;     strcpy(a, s);     n = j;     i = j = 0;     while (i < n) {       int t = i;       if (a[i] ==  k ) {         while (a[i] ==  k  && i < n) i++;         if (a[i] ==  h )           s[j++] =  h , i++;         else {           while (t < i) s[j++] =  k , t++;           s[j++] = a[i++];         }       } else         s[j++] = a[i++];     }     s[j] =   0 ;     return string(s);   }   int main() {     int n;     cin >> n;     cin.ignore();     char a[1000][100];     vector<string> ret;     for (int i = 0; i < n; i++) {       cin.getline(a[i], 100);       ret.push_back(proc(a[i]));     }     sort(ret.begin(), ret.end());     int ans = 0;     int i = 0;     while (i < n) {       int t = i + 1;       while (t < n && ret[i] == ret[t]) t++;       ans++;       i = t;     }     cout << ans;     return 0;   }   