#include <bits/stdc++.h>
using namespace std;

int main() {

  int n;
    cin>>n;
    int arr[n*n];
    vector<int>ans;
    map<int,int>cnt;
    map<int,int>::iterator it;
    for(int i=0;i<n*n;i++){
        cin>>arr[i];
        cnt[arr[i]]++;
    }
    sort(arr,arr+(n*n));
    int temp=arr[0];
    bool equal=true;
    for(int i=1;i<n*n;i++){
        if(arr[i]!=temp){
            equal=false;
        }
    }
    if(equal){
        for(int i=0;i<n;i++)
            cout<<temp<<" ";
        return 0;
    }
 //   for(int i=0;i<n*n;i++)
  //      cout<<arr[i]<<" ";
   // cout<<endl;
    for(int i=(n*n)-1;i>=0;i--) {
        if (cnt[arr[i]]>0) {
            ans.push_back(arr[i]);
            for (int k = 0; k < ans.size(); k++) {
             //   cout<<__gcd(arr[i],ans[k])<<" ";
             cnt[__gcd(arr[i],ans[k])]--;
            }
            if(cnt[arr[i]]>0){
                ans.pop_back();
            }
          //  cout<<endl;
        }

    }
   for(int i=0;i<ans.size()&&i<n;i++)
       cout<<ans[i]<<" ";




}