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())
L=[1]
for k in range(1,n):
    if((L[len(L)-1]+k)==n):
        L.append(L[len(L)-1]+k)
    else:
        L.append((L[len(L)-1]+k)%n)
L=list(set(L))
if(len(L)==n):
    print("YES")
else:
    print("NO")