#include <bits/stdc++.h>

using namespace std;

bool f(pair<long long, int> p1, pair<long long, int> p2){
    return (p2.second > p1.second);
}

int main()
{
    ios_base::sync_with_stdio(false);
    cin.tie(0);
    cout.tie(0);
    long long n;
    int k;
    cin >> n >> k;
    vector<pair<long long, int>> v;
    for(int i = 0; i < k; i++){
        long long t;
        cin >> t;
        v.push_back(make_pair(t, i));
    }
    sort(v.rbegin(), v.rend());
    for(int i = 0; i < n; i++){
        long long z = v[i].first;
        for(int j = i+1; j < n; j++){
            if(v[i].first%v[j].first==0)
                z = z^v[j].first;
        }
        v[i].first = z;
    }
    sort(v.begin(),v.end(), f);
    for(int i = 0; i < k; i++){
        cout << v[i].first << " ";
    }
    cout << endl;
    return 0;
}