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 java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;

public class Solution {
	
	public void solve() throws IOException {
		int n = in.nextInt();
		
		for (int i = 0; i < n; ++i) {
			int a = in.nextInt();
			if (360 % (180 - a) == 0) {
				System.out.println("YES");
			} else {
				System.out.println("NO");
			}
		}
	}
	
	public void run() throws IOException {
		in = new MyScanner();
		solve();
		in.close();
	}
	
	private MyScanner in;
	//private PrintWriter out;
	
	public class MyScanner {
		private BufferedReader br;
		private StringTokenizer st;
		
		public MyScanner() {
			this.br = new BufferedReader(new InputStreamReader(System.in));
		}
		
		public MyScanner(String fileTitle) throws IOException {
			this.br = new BufferedReader(new FileReader(fileTitle + ".in"));
		}
		
		public String next() throws IOException {
			while (st == null || !st.hasMoreTokens()) {
				String s = br.readLine();
				if (s == null) {
					return "-1";
				}
				st = new StringTokenizer(s);
			}
			return st.nextToken();
		}
		
		public int nextInt() throws IOException {
			return Integer.parseInt(next());
		}
		
		public long nextLong() throws IOException {
			return Long.parseLong(next());
		}
		
		public int[] nextIntArray(int size) throws IOException {
			int[] arr = new int[size];
			for (int i = 0; i < size; ++i) {
				arr[i] = nextInt();
			}
			return arr;
		}
		
		public void close() throws IOException {
			br.close();
		}
	}
	
	public static void main(String[] args) throws IOException {
		new Solution().run();
	}

}
