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.
#include <bits/stdc++.h>
using namespace std;
int main() {
  int t;
  cin >> t;
  int arr[] = {3,    4,    5,    6,     8,     9,    10,   12,   15,   18,
               20,   24,   30,   36,    40,    45,   60,   72,   89,   90,
               120,  178,  180,  267,   356,   360,  445,  534,  712,  801,
               890,  1068, 1335, 1602,  1780,  2136, 2670, 3204, 3560, 4005,
               5340, 6408, 8010, 10680, 16020, 32040};
  map<int, bool> m;
  for (int i = 0; i < (sizeof(arr) / sizeof(arr[0])); i++) {
    m[(arr[i] - 2) * 180 / arr[i]] = true;
  }
  while (t--) {
    int angle;
    cin >> angle;
    if (m[angle])
      cout << "YES" << endl;
    else {
      cout << "NO" << endl;
    }
  }
  return 0;
}
