A flea is sitting at one of the *n* hassocks, arranged in a circle, at the moment. After minute number *k* the flea jumps through *k* - 1 hassoсks (clockwise). For example, after the first minute the flea jumps to the neighboring hassock. You should answer: will the flea visit all the hassocks or not. We assume that flea has infinitely much time for this jumping.
The only line contains single integer: 1 ≤ *n* ≤ 1000 — number of hassocks.
n = int(input())

v = [0] * n
pos = 0
for i in range(n):
	pos += i
	pos %= n
	v[pos] += 1
	
a = "NO"

for i in range(n):
	if not v[i]:
		a = "YES"
		break
		
print(a)
