#include <bits/stdc++.h>
using namespace std;
void solve()
{
    int n,i;
    cin>>n;
    int visit[100000]={0},a[n];
    int mx=0;
    for(i=0;i<n;i++)
    {
        cin>>a[i];
    }
    vector<int> ans;
    for(i=0;i<n;i++)
    {
        int num=0,t=0;
        for(auto j : a)
        {
            if(visit[j]==0&&__gcd(mx,j)>t)
            {
                num=j;
                t=__gcd(mx,j);
            }
        }
        ans.push_back(num);
        mx=__gcd(num,mx);
        visit[num]=1;

    }
    for(auto i : ans)
    {
        cout<<i<<" ";
    }
    cout<<endl;

}
int main()
{
   // cout<<__gcd(0,96)<<endl;
    int t;
    cin>>t;
    while(t--)
    {
        solve();
    }



    return 0;
}
