using System; using static System.Console; using System.Linq; using System.Collections.Generic; class Program { static int NN => int.Parse(ReadLine()); static int[] NList => ReadLine().Split().Select(int.Parse).ToArray(); public static void Main() { Solve(); } static void Solve() { var k = NN; for (var i = 0; i <= 30; ++i) for (var j = Math.Max(0, 1 - i); i + j <= 30; ++j) { var v = (long)j * (j - 1) / 2 << i; if (v == k) { var ans = new List(); for (var x = 0; x < i; ++x) ans.Add(0); for (var x = 0; x < j; ++x) ans.Add(1); WriteLine(ans.Count); WriteLine(string.Join(" ", ans)); return; } } } }