#include<stdio.h>
int main()
{
int n,i,j,k,t,ans;
scanf("%d",&n);
int a[101],b[101],c[101]; //b用来存中途产生的数 ,c用来存关键数
int mark[101]={0}; //标记关键数
for(i=0;i<n;i++){
scanf("%d",&a[i]);
mark[i]=1;
}
for(i=0;i<n;i++){
ans=0;//统计计算的步数
t=a[i];
while(t!=1){//记录产生的新数
if(t%2==0){//偶数时
t/=2;
}
else{
t=(3*t+1)/2;//奇数时
}
if(t<101){
b[ans]=t;
ans++;
}
}
for(j=0;j<n;j++){//进行比较
if(mark[j] == 1){
for(k=0;k<ans;k++){
if(a[j]==b[k] && mark[j]==1 ){
mark[j]=0;
break;
}
}
}
}
}
ans=0;//统计关键字有多少个
for(i=0;i<n;i++){
if(mark[i] == 1){
c[i]=a[i];
ans++;
}
else
c[i]=0;//不是关键字的置为0
}
for(i=0;i<n;i++){//关键字与0从大到小进行排序
for(j=i;j<n;j++){
if(c[i]<c[j]){
t=c[j];
c[j]=c[i];
c[i]=t;
}
}
}
for(i=0;i<ans;i++)//输出排好序的关键字
{
if(i!=0)
printf(" ");
printf("%d",c[i]);
}
}