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())
visited = [0]*n
pos = 0
jump = 1
for i in range(n*2):
    #print(visited,pos)
    pos = (pos+jump)%n
    visited[pos]=1
    jump = (jump+1)%n

for i in visited:
    if i==0:
        print("NO")
        exit()
print("YES")
