func_code_string: #include <bits/stdc++.h>   using namespace std;   vector<long long int> factors(long long int n) {     vector<long long int> v;     for (long long int i = 1; i * i <= n; i++) {       if (n % i == 0) {         if (i * i == n)           v.push_back(i);         else {           v.push_back(i);           v.push_back(n / i);         }       }     }     sort(v.begin(), v.end());     return v;   }   long long gcd(long long a, long long b) {     if (b == 0)       return a;     else       return gcd(b, a % b);   }   int main() {     std::ios_base::sync_with_stdio(false);     long long int t;     cin >> t;     while (t--) {       long long int n;       cin >> n;       long long int a[n], i, j;       for (i = 0; i < n; i++) {         cin >> a[i];       }       sort(a, a + n);       map<long long int, long long int> m;       long long int temp = a[n - 1];       vector<long long int> sol;       m[n - 1] = 1;       sol.push_back(temp);       long long int ans = temp, index;       for (i = 0; i < n; i++) {         long long int temp_gcd = INT_MIN;         for (j = 0; j < n; j++) {           if (m[j] == 0) {             long long int temp = gcd(ans, a[j]);             if (temp > temp_gcd) {               temp_gcd = temp;               index = j;             }           }         }         m[index] = 1;         sol.push_back(a[index]);         ans = temp_gcd;       }       for (i = 0; i < n; i++) {         cout << sol[i] <<    ;       }       cout <<   n ;     }     return 0;   }   