#include <cstdio>
#include <algorithm>
using namespace std;
bool comp(int lsh,int rsh){
    if(lsh>rsh){
        return true;
    }
    else {
        return false;
    }
    }
//输入10个整数,彼此以空格分割,重新排序后输出(也按空格分隔)
//要求:1)首先输出其中的奇数,并且按照从大到小的顺序排列,
//2)然后输出其中的偶数,并且按照从小到大的顺序排列
int main() {
    int arr[10];
    for(int i=0;i<10;i++){
        scanf("%d",&arr[i]);
    }
    int odd[10];
    int even[10];
    int j=0;
    int q=0;
    for(int i=0;i<10;i++){
        if(arr[i]%2==0){
            even[j]=arr[i];
            j+=1;
        }
        else{
            odd[q]=arr[i];
            q+=1;
        }
    }
    sort(odd,odd+q,comp);
    sort(even,even+j);
    for(int i=0;i<q;i++){
        printf("%d ",odd[i]);
    }
    for(int i=0;i<j;i++){
        printf("%d ",even[i]);
    }

    return 0;
}