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.util.*;
import java.io.*;
public class b {
    public static PrintWriter out;
    public static void main(String[] args) throws IOException {
        FS sc = new FS(System.in);
        out = new PrintWriter(new BufferedOutputStream(System.out));
        int n = sc.nextInt();
        int[] a = new int[n];
        for (int i=0;i<n;i++)
            a[i] = sc.nextInt();
 
        Arrays.sort(a);
        int[] ret = new int[n];
        int l = 0;
        int r = n-1;
        int idx = 0;
        while (l < r) {
            ret[idx++] = a[l];
            ret[idx++] = a[r];
            l++;
            r--;
        }
        if (n % 2 == 1) {
            ret[idx] = a[l];
        }
        for (int i=0;i<n;i++) {
            if (i != 0) out.printf(" ");
            out.print(ret[i]);
        }
        out.println();
 
        out.close();
    }
    
    static class FS {
    	BufferedReader br;
        StringTokenizer st;
 
    	public FS(InputStream i) {
            br = new BufferedReader(new InputStreamReader(i));
	        st = new StringTokenizer("");
        }
 
        public String next() throws IOException {
            if(st.hasMoreTokens())
                return st.nextToken();
    	    else
                st = new StringTokenizer(br.readLine());
            return next();
        }
 
        public int nextInt() throws IOException {
            return Integer.parseInt(next());
        }
	
        public long nextLong() throws IOException {
            return Long.parseLong(next());
    	}
 
        public double nextDouble() throws IOException {
            return Double.parseDouble(next());
        }
    }
}
			 		 		    	    		 	 	 				