Little penguin Polo likes permutations. But most of all he likes permutations of integers from 0 to *n*, inclusive.

For permutation *p* = *p*<sub class="lower-index">0</sub>, *p*<sub class="lower-index">1</sub>, ..., *p*<sub class="lower-index">*n*</sub>, Polo has defined its beauty — number <img align="middle" class="tex-formula" src="https://espresso.codeforces.com/0c51fe5d835015fdb8b8dbb056e9a83c439c83dc.png" style="max-width: 100.0%;max-height: 100.0%;"/>.

Expression <img align="middle" class="tex-formula" src="https://espresso.codeforces.com/b364f2e04c665b78b924ec10666327a4ef4635bc.png" style="max-width: 100.0%;max-height: 100.0%;"/> means applying the operation of bitwise excluding "OR" to numbers *x* and *y*. This operation exists in all modern programming languages, for example, in language C++ and Java it is represented as "^" and in Pascal — as "xor".

Help him find among all permutations of integers from 0 to *n* the permutation with the maximum beauty.
The single line contains a positive integer *n* (1 ≤ *n* ≤ 10<sup class="upper-index">6</sup>).
import sys
from math import *
from collections import *
from functools import lru_cache
inp = lambda: sys.stdin.buffer.readline().decode().strip()
out=sys.stdout.write
# n=int(inp())
# arr=list(map(int,inp().split()))
n=int(inp())
if n%2==1:
    ans=[n]
    for i in range(1,n):
        if i%2==1:
            ans.append(i+1)
        else:
            ans.append(i-1)
    ans.append(0)
else:
    ans=[0]
    for i in range(1,n+1):
        if i%2==1:
            ans.append(i+1)
        else:
            ans.append(i-1)
print(*ans)


                
        