#include #include #include #include #include #include #include #include #include #include #include #include using namespace std; typedef long long ll; typedef unsigned long long ull; typedef long double ld; //const ll mod = 1000000007; const ll mod = 998244353; const ld pi = 3.14159265358979; ll gcd(ll a , ll b){ if(a < b)swap(a , b); if(b == 0)return 1; if(a % b == 0)return b; else return gcd(b , a % b); } bool isPrime(ll x){ if(x == 2 || x == 3 || x == 5 || x == 7){ return true; } for(int i = 3; i * i <= x; i++){ if(x % i == 0)return false; } return true; } int main(){ cin.tie(0); ios::sync_with_stdio(false); //cout << fixed << setprecision(15); ll n; cin >> n; vector v; for(ll i = 1; i * i <= n; i++){ if(n % i == 0){ v.push_back(i); if(i != n / i)v.push_back(n / i); } } bool ok = false; for(int i = 0; i < v.size(); i++){ if(isPrime(v[i]) == false && v[i] != 1 && v[i] != n){ ok = true; break; } } if(ok){ cout << "YES" << endl; }else{ cout << "NO" << endl; } return 0; }