def sieve(n): l = [x for x in range(2, n + 1)] ans = [] while l[0] ** 2 <= n: car = l[0] cdr = l[1:] ans.append(car) l = [x for x in cdr if x % car != 0] return ans + l def judge(n, l): le = len(l) a = le // 2 if le == 0: return False elif l[a] ** 2 == n: return True elif l[a] < n: return judge(n, l[:a]) else: return judge(n, l[a:]) n = int(input()) p = sieve(10000000) if n in p: print("NO") elif judge(n, p): print("NO") else: print("YES")