#include <iostream>
#include<vector>
using namespace std;
核心思想就是,奇偶数交叉再将最后第一位奇偶数放到最后就行
int main() {
    int n;
    cin>>n;
    if(n<3){
        cout<<-1<<endl;
        return 0;
    }
    vector<int> p(n+1);
    //构造偶数部分的映射
    for(int i=2;i<=n;i+=2){
        if(i+2<=n){
            p[i]=i+2;
        }
    }
    int last_even=(n%2==0)? n:n-1;
    p[last_even]=2;
    //构造奇数部分的映射
    for(int i=1;i<=n;i+=2){
        if(i+2<=n){
            p[i]=i+2;
        }
    }
    int last_odd=(n%2==1)?n:n-1;
    p[last_odd]=1;
    for(int i=1;i<=n;i++){
        cout<<p[i]<<(i==n?"":" ");
    }
    cout<<endl;
    return 0;
}
// 64 位输出请用 printf("%lld")