#define _GLIBCXX_DEBUG #include <bits/stdc++.h> #include <atcoder/dsu> using namespace std; using namespace atcoder; typedef long long ll; typedef pair<ll,ll> pi; #define ALL(x) x.begin(),x.end() #define rep(i,a,b) for(int i=a;i<b;i++) using vi = vector<int>; using vvi = vector<vi>; using li =vector<ll>; using lli=vector<li>; using si =vector<char>; using ssi =vector<si>; const long long mod=998244353; //for (auto [key, val] : mp) int main() { ll n;cin>>n; vector<ll>vec(10); vec[0]=6; vec[1]=28; vec[2]=496; vec[3]=8128; vec[4]=33550336; vec[5]=8589869056; vec[6]=137438691328; rep(i,0,7){if(vec[i]==n){cout<<"Yes";return 0;}} cout<<"No"; }