func_code_string: #include <bits/stdc++.h>   const int MX = 2e6 + 7;   const int N = 1e9 + 1;   const int mod = 998244353;   const double pi = acos(-1);   double esp = 1e-13;   using namespace std;   long long qpow(long long a, long long b, long long MOD = mod) {     for (long long ans = 1;; a = a * a % MOD, b >>= 1) {       if (b & 1) ans = ans * a % MOD;       if (!b) return ans;     }   }   long long inv(long long a, long long MOD = mod) {     return qpow(a, MOD - 2, MOD);   }   long long exgcd(long long a, long long b, long long &x, long long &y) {     if (b == 0) {       x = 1, y = 0;       return a;     }     long long ret = exgcd(b, a % b, y, x);     y -= a / b * x;     return ret;   }   long long getInv(int a, int mod) {     long long x, y;     long long d = exgcd(a, mod, x, y);     return d == 1 ? (x % mod + mod) % mod : -1;   }   long long add(long long a, long long b) {     long long ans = (a + b) % mod;     return ans >= 0 ? ans : ans + mod;   }   void mul(long long &a, long long b) { a = a % mod * (b % mod) % mod; }   int main() {     ios::sync_with_stdio(0), cin.tie(0);     int t;     cin >> t;     while (t--) {       int n;       cin >> n;       priority_queue<pair<int, int>> Q;       for (int i = 1; i <= n; i++) {         int x;         cin >> x;         Q.push(make_pair(x, i));       }       int tmp = 0, res = 0;       while (!Q.empty()) {         auto x = Q.top();         Q.pop();         if (x.second == res) {           if (Q.empty()) {             break;           } else {             tmp++;             auto y = Q.top();             Q.pop();             y.first--;             if (y.first != 0) Q.push(y);             res = y.second;             Q.push(x);           }         } else {           tmp++;           x.first--;           if (x.first != 0) Q.push(x);           res = x.second;         }       }       cout << (tmp % 2 == 0 ?  HL  :  T ) <<   n ;     }   }   