The Little Elephant enjoys recursive functions.

This time he enjoys the sorting function. Let a is a permutation of an integers from 1 to n, inclusive, and ai denotes the i-th element of the permutation. The Little Elephant's recursive function f(x), that sorts the first x permutation's elements, works as follows:

  * If x = 1, exit the function. 
  * Otherwise, call f(x - 1), and then make swap(ax - 1, ax) (swap the x-th and (x - 1)-th elements of a). 



The Little Elephant's teacher believes that this function does not work correctly. But that-be do not get an F, the Little Elephant wants to show the performance of its function. Help him, find a permutation of numbers from 1 to n, such that after performing the Little Elephant's function (that is call f(n)), the permutation will be sorted in ascending order.

Input

A single line contains integer n (1 ≤ n ≤ 1000) — the size of permutation.

Output

In a single line print n distinct integers from 1 to n — the required permutation. Numbers in a line should be separated by spaces.

It is guaranteed that the answer exists.

Examples

Input

1


Output

1 

Input

2


Output

2 1 
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class LittleElephantAndFunction_221A {

	static int[] a;

	public static void main(String[] args) throws NumberFormatException, IOException {

		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		int n = new Integer(br.readLine());
//		a = new int[n];
//		for (int i = 0; i < a.length; i++) {
//			a[i] = n--;
//		}
//		for (int i = 1; i < n; i++) {
//			f(i);
//		}
//		for (int i = 0; i < a.length; i++) {
//			System.out.print(a[i] + " ");
//		}
		System.out.print(n + " ");
		for (int i = 1; i < n; i++) {
			System.out.print(i + " ");
		}

	}

	public static boolean isSorted() {
		for (int i = 1; i < a.length; i++) {
			if (a[i] > a[i - 1])
				return false;
		}
		return true;
	}

	public static void NextPermutation() {
		int pre = -1;
		for (int i = 0; i < a.length; i++) {
			int tmp = 0;
			if (i != 0) {
				tmp = a[i];
				a[i] = pre;
				pre = tmp;
			}else{
				tmp = a[i];
				a[i] = a[a.length -1];
				pre = tmp;
			}
		}
	}

	public static void f(int x) {
		if (x == 1)
			return;
		f(x - 1);
		int tmp = a[x - 1];
		a[x - 1] = a[x - 2];
		a[x - 2] = tmp;
	}

}
