A = N = int(input()) + 1 L, C, R = [1], 0, {} while C < A: Q = L L =[] C += 1 for i in Q: B = bin(i).count('1') A = [A, C][i == N - 1] L = [L + [i + B] * (i + B < N) + [i - B] * (i > B), L][i in R] R[i] = 1 print([-1, A][A < N])