#include<iostream>
using namespace std;
#include <string>
void swap(int &n1,int &n2){
int tmp=n1;
n1=n2;
n2=tmp;
}
int main(){
int a=0,b=0,end1=-1,end2=-1;
cin >> a >> b;
int num[a],mod[a];
for (int i=0;i<a;i++){
cin >>num[i];
mod[i]=num[i]%b;
}
cin >> end1>>end2;
for(int i=0; i<a; i++){
for(int j=i+1; j<a; j++){
if(mod[i]>mod[j]){
swap(mod[i],mod[j]);
swap(num[i],num[j]);
}
else if(mod[i]==mod[j]){
if(num[i]%2==0 && num[j]%2!=0){
swap(mod[i],mod[j]);
swap(num[i],num[j]);
}
else if(num[i]%2!=0 && num[j]%2!=0){
if(num[i]<num[j]){
swap(mod[i],mod[j]);
swap(num[i],num[j]);
}
}
else if(num[i]%2==0 && num[j]%2==0){
if(num[i]>num[j]){
swap(mod[i],mod[j]);
swap(num[i],num[j]);
}
}
}
}
}
cout << a<<" "<<b<<endl;
for (int i=0;i<a;i++){
cout << num[i]<<'\n';
}
cout << 0<<" "<<0;
}