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(); static int[][] NArr(long n) => Enumerable.Repeat(0, (int)n).Select(_ => NList).ToArray(); public static void Main() { Solve(); } static void Solve() { var x = long.Parse(ReadLine()); for (var i = 1; i < 64; ++i) { var n = x ^ i; if (Weight(n) == i) { WriteLine(n); return; } } WriteLine(-1); } static int Weight(long n) { var ans = 0; while (n > 0) { ans += (int)(n % 2); n >>= 1; } return ans; } }