def popcount(x): x = x - ((x >> 1) & 0x55555555) # 4bit整数に 上位2bit + 下位2bit を計算した値を入れる x = (x & 0x33333333) + ((x >> 2) & 0x33333333) x = (x + (x >> 4)) & 0x0f0f0f0f # 8bitごと x = x + (x >> 8) # 16bitごと x = x + (x >> 16) # 32bitごと return x & 0x0000007f N = int(input()) i = 1 cnt = 0 while i**2 <= N: if N % i == 0: AXB = i AOB = N // i if (~AOB & AXB) == 0: cnt += 2**(popcount(AOB&AXB)-1) i += 1 print(cnt)