你说得对,但是……
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

                                                                                                        图片.png
你说得对,但是规则,就是用来打破的;炎枪,冲锋;来尝尝本姑娘的厉害;洞天幻化,长梦一觉;为了守护与捍卫,击溃他们;随蝴蝶一起消散吧,旧日的幻影;帮帮我,史瓦罗先生!帮帮我,史瓦罗先生!帮帮我,史瓦罗先生!帮帮我,史瓦罗先生!帮帮我,史瓦罗先生!帮帮我,史瓦罗先生!帮帮我,史瓦罗先生!帮帮我,史瓦罗先生!帮帮我,史瓦罗先生!帮帮我,史瓦罗先生!

在”帮帮我,史瓦罗先生!“的无尽洗脑下,一位进不去鲍勃酒馆的旅行者·刀客塔·舰长·开拓者·杠精·胡北人·珂学家·阳光开朗大男孩·拳皇·真IKUN(以下简称真IKUN)忘记回提瓦特清树脂啦!真IKUN看着666的树脂,不禁报起了菜名,蒸乌鱼,荔枝呢,油饼食不食,香精煎鱼食不食,香翅捞饭食不食,香菜凤仁鸡食不食。

真IKUN不喜欢树脂,也不喜欢质数,她想构造一个排列,满足对于排列中的每一项 a_i 都满足:gcd(a_i , i) 均不是质数(下标 i 从1开始)。但是真IKUN不会,所以她想让你构造(求求你啦,求求你啦,帮帮鸽鸽吧!)。

长度为 n 的排列是指:一个长度为 n 的数组,其中 1n 每个正整数恰好出现一次。例如 [2,1,3] 是排列,而 [1,3,4,3] 不是排列。

gcd(x , y) 是指:xy 的最大公因数。

输入描述:

一个正整数 n(1≤n≤10^5) ,代表待构造的排列长度。

输出描述:

如果无法构造,则输出 -1

否则输出一个长度为 n 的满足要求的排列。有多解时输出字典序最小的排列。
示例1

输入

复制
4

输出

复制
1 3 2 4