Chef likes prime numbers. However, there is one thing he loves even more. Of course, it's semi-primes! A semi-prime number is an integer which can be expressed as a product of two distinct primes. For example, $15 = 3 \cdot 5$ is a semi-prime number, but $1$, $9 = 3 \cdot 3$ and $5$ are not.
Chef is wondering how to check if an integer can be expressed as a sum of two (not necessarily distinct) semi-primes. Help Chef with this tough task!

-----Input-----
- The first line of the input contains a single integer $T$ denoting the number of test cases. The description of $T$ test cases follows.
- The first and only line of each test case contains a single integer $N$.

-----Output-----
For each test case, print a single line containing the string "YES" if it is possible to express $N$ as a sum of two semi-primes or "NO" otherwise.

-----Constraints-----
- $1 \le T \le 200$
- $1 \le N \le 200$

-----Example Input-----
3
30
45
62

-----Example Output-----
YES
YES
NO

-----Explanation-----
Example case 1: $N=30$ can be expressed as $15 + 15 = (3 \cdot 5) + (3 \cdot 5)$.
Example case 2: $45$ can be expressed as $35 + 10 = (5 \cdot 7) + (2 \cdot 5)$.
Example case 3: $62$ cannot be expressed as a sum of two semi-primes.

```python

USER_FILENAME = "<user_code>"
import sys, json, builtins
import math, heapq, bisect, itertools, functools, collections, statistics, fractions, decimal, operator, array, random, re, string, os, pathlib
try:
    import resource as _res
except Exception:
    _res = None
from collections import Counter, defaultdict, deque, OrderedDict
from functools import lru_cache, reduce
from itertools import accumulate, permutations, combinations, product
from math import gcd, ceil, floor, sqrt
from decimal import Decimal
try:
    from typing import *
except Exception:
    pass
try:
    sys.setrecursionlimit(1_000_000)
except Exception:
    pass
try:
    import site as _site
    try:
        _sys_sites = _site.getsitepackages() if hasattr(_site, "getsitepackages") else []
        for _p in _sys_sites:
            if _p and _p not in sys.path:
                sys.path.append(_p)
    except Exception:
        pass
    try:
        _usp = _site.getusersitepackages()
        if isinstance(_usp, str):
            _usp = [_usp]
        for _p in _usp:
            if _p and _p not in sys.path:
                sys.path.append(_p)
    except Exception:
        pass
except Exception:
    pass

ns = {"__name__": "__main__"}
for _k, _v in list(globals().items()):
    if not _k.startswith("_"):
        ns[_k] = _v
_CODE = 'def sievearray():\r\n  n=200\r\n  sieve=[1 for i in range(n+1)]\r\n  sieve[0]=0\r\n  sieve[1]=0\r\n  i=2\r\n  while i*i<=n:\r\n    if sieve[i]==1:\r\n      for j in range(i*i,n+1,i):\r\n        sieve[j]=0\r\n    i+=1\r\n  return sieve\r\ndef semiprime(n):\r\n  i=2\r\n  m2=0\r\n  m1=0\r\n  while i!=n:\r\n    if n%i==0 and sieve[i]==1:\r\n      m1=i\r\n    if n==m1*m2 and m1!=m2:\r\n      return 1\r\n    else:\r\n      m2=m1\r\n      i+=1\r\n  return 0\r\ndef sum_of_two(n):\r\n  for i in range(2,n//2+1):\r\n    p=i\r\n    q=n-i\r\n    if semiprime(p) and semiprime(q):\r\n      return 1\r\ntry:\r\n    t=0\r\n    t=int(input())\r\n    sieve=sievearray()\r\nexcept Exception:\r\n    pass\r\nl1=[0 for i in range(0,t)]\r\nfor i in range(0,t):\r\n  l1[i]=int(input())\r\nfor i in range(0,len(l1)):\r\n  if sum_of_two(l1[i]):\r\n    print("YES")\r\n  else:\r\n    print("NO")\r\n  \r\n\r\n'
_co = compile(_CODE, USER_FILENAME, "exec")
exec(_co, ns, ns)

```

Measured memory_bytes: 13531