#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
typedef long long ll;
typedef pair<ll, ll> PII;
vector<PII> ans; //第一个值是二进制中一的个数,第二个数是原数
int get(int x)
{
int cnt =0 ;
while (x) {
x = x & (x - 1);
cnt++;
}
return cnt;
}
int main()
{
int n;
int idx = 0;
cin >> n;
while (n--) {
ll x;
ll cnt;
cin >> x;
cnt = get(x);
ans.push_back({ cnt,x });
}
sort(ans.begin(), ans.end());
for (vector<PII>::iterator i = ans.begin(); i != ans.end(); i++) {
cout << i->second<<" ";
}
return 0;
}