A student of z-school found a kind of sorting called z-sort. The array a with n elements are z-sorted if two conditions hold:

  1. ai ≥ ai - 1 for all even i, 
  2. ai ≤ ai - 1 for all odd i > 1. 



For example the arrays [1,2,1,2] and [1,1,1,1] are z-sorted while the array [1,2,3,4] isn’t z-sorted.

Can you make the array z-sorted?

Input

The first line contains a single integer n (1 ≤ n ≤ 1000) — the number of elements in the array a.

The second line contains n integers ai (1 ≤ ai ≤ 109) — the elements of the array a.

Output

If it's possible to make the array a z-sorted print n space separated integers ai — the elements after z-sort. Otherwise print the only word "Impossible".

Examples

Input

4
1 2 2 1


Output

1 2 1 2


Input

5
1 3 2 2 5


Output

1 5 2 3 2
import java.io.IOException;
import java.util.Arrays;
import java.util.*;
import java.io.*;

public class z_sort {
	public static void main(String []   args) throws IOException {
		Scanner sc=new Scanner(System.in);
		int n=sc.nextInt();
		long arr[]=new long [n];
		for(int i=0;i<n;i++) {
			arr[i]=sc.nextLong();
		}
		Arrays.sort(arr);
		
		long[] odd;
		long[]even;
		if (n%2==0) {
			odd=new long [n/2];
		    even=new long [n/2];
		}
		else {
			odd=new long [n/2];
			even=new  long [(n/2)+1];
		}
		long [] res=new long[n];
		
		int o=0;
		int e=0;
		int i=0;
		for(i=0;i<even.length;i++)
			even[i]=arr[i];
	    for(int w=0;w<odd.length;w++)
	    	odd[w]=arr[w+i];
	    long []oddr=new long[odd.length];
	    int k=0;
	    for(int j=odd.length-1;j>=0;j--) {
	    	oddr[k++]=odd[j];
	    }
		for(int j=0;j<n;j++) {
			if(j%2==0)
				res[j]=even[e++];
			else
				res[j]=oddr[o++];
		}
		for(int r=0;r<res.length;r++)
			System.out.print(res[r]+" ");
		
	}

}
