#include<bits/stdc++.h>
using namespace std;
using ll = long long;
#define rep(i,m,n) for(int i=m; i<n; ++i)
#define repll(i,m,n) for(ll i=m; i<n; ++i)
// #define rep(i,m,n) for(ll i=m; i<n; ++i)
#define all(a) (a).begin(), (a).end()
#define rall(a) (a).rbegin(), (a).rend()
#define fir first
#define sec second

template<typename T> bool chmin(T& a, T b){
    if(a > b){a = b; return true;}
    return false;
}
template<typename T> bool chmax(T& a, T b){
    if(a < b){a = b; return true;}
    return false;
}

int main(){
    ll N;
    cin >> N;

    vector<ll> enum_pn = {6LL, 28LL, 496LL, 8128LL, 33550336LL, 
                          8589869056LL, 137438691328LL};
    for(ll pn : enum_pn){
        if(pn == N){
            puts("Yes");
            return 0;
        }
    }
    puts("No");
    return 0;
}