Emuskald needs a fence around his farm, but he is too lazy to build it himself. So he purchased a fence-building robot.

He wants the fence to be a regular polygon. The robot builds the fence along a single path, but it can only make fence corners at a single angle a.

Will the robot be able to build the fence Emuskald wants? In other words, is there a regular polygon which angles are equal to a?

Input

The first line of input contains an integer t (0 < t < 180) — the number of tests. Each of the following t lines contains a single integer a (0 < a < 180) — the angle the robot can make corners at measured in degrees.

Output

For each test, output on a single line "YES" (without quotes), if the robot can build a fence Emuskald wants, and "NO" (without quotes), if it is impossible.

Examples

Input

3
30
60
90


Output

NO
YES
YES

Note

In the first test case, it is impossible to build the fence, since there is no regular polygon with angle <image>.

In the second test case, the fence is a regular triangle, and in the last test case — a square.
import dis,sys, os.path
if(os.path.exists('in_py.txt')):
    sys.stdin = open("in_py.txt","r")
    sys.stdout = open("out_py.txt","w")

input = sys.stdin.readline

############ ---- Input Functions ---- ############

# inp — For taking integer inputs.

# inlt — For taking List inputs.

# insr — For taking string inputs. Actually it returns a List of Characters, instead of a string, which is easier to use in Python, because in Python, Strings are Immutable.

# invr — For taking space seperated integer variable inputs.

# The input = sys.stdin.readline is actually for Faster Inputs, because line reading through System STDIN (Standard Input) is faster in Python.


def inp():
    return(int(input())) 
def inlist():
    return(list(map(int,input().split()))) 
def insr():
    s=input()
    return(list(s[:len(s) - 1]))
def invr():
    return(map(int,input().split()))

t=inp()

i=0

while i<t:
	a=inp()
	n=360/(180-a)
	if(n==int(n)):
		print("YES")
	else:
		print("NO")
	i+=1

