近期发现部分用户尝试利用判题系统的评测信息进行作弊,严重破坏了公平竞争的环境。为维护良好的交流与学习氛围,已对判题机进行了优化,当程序遇到测试点不通过时会立即返回而不评测更多测试点;并且延长提交间隔为60秒。作弊行为不仅违背了学习的初衷,还侵害了其他用户的公平权益,希望所有用户能够遵守规范,专注算法与思维能力的提升。对于恶意多次尝试的用户,我们将保留进一步处置的权利。 —— Administrator

100619 - 没有三角形的数组

Time Limit

20 毫秒

Memory Limit

128 MB

通过次数

16

提交次数

26

构造一个元素尽可能多的数组,其中每个元素a_i均为正整数且数组中任意3个元素都不能构成三角形。

Input

一行,一个正整数n

对于100%的数据:

2 \le n \le 10^{18}

Output

第一行,一个正整数x,表示你构造的数组的长度。

第二行,x个正整数,从小到大依次表示你构造的数组的每个元素。

Examples

Input

2

Output

3
1 1 2