# involution-q33
# Section 6, Q.33, p.28, p.253
# input: 5 or 67 or 34567

def g(x):
  n = 1
  while n <= x:
    n *= 2
  return n

def f(n):
  if n == 1:
    return 1
  elif (n%2 == 1):
    return f((n+1)//2) + g((n-1)/4)
  else:
    return f(n//2) + g((n-2)/2)

n = int(input("n=? "))
res = f(f(n))
print(n, res, n==res)