#include<iostream>
#include<algorithm>
#define MAXSIZE 1000
using namespace std;
bool cmp1(int i1,int i2){
return i1<i2;
}
bool cmp2(int i1,int i2){
return i1>i2;
}
int main(){
int buf1[MAXSIZE],buf2[MAXSIZE],s1=0,s2=0,n,i,tmp;
cin>>n;
for(i=0;i<n;i++){
cin>>tmp;
if(tmp%2==0){
buf1[s1++]=tmp;
}else{
buf2[s2++]=tmp;
}
}
sort(buf1,buf1+s1,cmp1);
sort(buf2,buf2+s2,cmp2);
for(i=0;i<s1;i++) cout<<buf1[i]<<" ";
cout<<endl;
for(i=0;i<s2;i++) cout<<buf2[i]<<" ";
return 0;
}