#include using namespace std; using ll=long long; const int N=10010; ll a[N]; vector divs[N]; vector> mul; void pre(){ for(ll i=1;i>n; for(ll i=0;i>a[i]; const ll mx=*max_element(a,a+n); mul.resize(mx+1); for(ll i=1;i ans{(ll)a[0]}; ll e=a[0]; for(ll i=1;ilc){ best_lcm=lc; a=x; } } ans.emplace_back(a); for(ll d:divs[a]){ auto it=mul[d].find(a); mul[d].erase(it); } e=a; } for(ll &x:ans)cout<>T; while(T--)solve(); return 0; }