func_code_string: #include <bits/stdc++.h>   using namespace std;   bool compare(const pair<int, int> &i, const pair<int, int> &j) {     return i.second > j.second;   }   int n, d;   vector<pair<long long, long long>> a;   long long p(long long a, long long b) {     long long x = 1, y = a;     while (b > 0) {       if (b % 2 == 1) {         x = (x * y) % 998244353;       }       y = (y * y) % 998244353;       b /= 2;     }     return x % 998244353;   }   long long inv(long long a) { return p(a, 998244353 - 2); }   int main() {     ios_base::sync_with_stdio(false);     cin.tie(0);     cout.tie(0);     string s;     cin >> s;     map<char, int> m;     vector<char> v;     for (int i = 0; i < s.length(); i++) {       m[s[i]]++;     }     for (auto x : m)       if (x.second % 2) v.push_back(x.first);     for (int i = v.size() - 1, j = 0; i > j; i--, j++) {       if (i <= j) break;       m[v[j]]++, m[v[i]]--;     }     string str =   ;     char flag =  0 ;     for (auto x : m) {       if (!x.second) continue;       if (x.second % 2) flag = x.first;       for (int i = 0; i < (x.second) / 2; i++) {         str += x.first;       }     }     string ans = str;     if (flag !=  0 ) {       ans += flag;     }     reverse(str.begin(), str.end());     ans += str;     cout << ans;     return 0;   }   