source_code: import java.io.OutputStream;
  import java.io.IOException;
  import java.io.InputStream;
  import java.io.PrintWriter;
  import java.util.StringTokenizer;
  import java.io.IOException;
  import java.io.BufferedReader;
  import java.io.InputStreamReader;
  import java.io.InputStream;
  
  /**
   * Built using CHelper plug-in
   * Actual solution is at the top
   *
   * @author lucasr
   */
  public class Main {
  	public static void main(String[] args) {
  		InputStream inputStream = System.in;
  		OutputStream outputStream = System.out;
  		MyScanner in = new MyScanner(inputStream);
  		PrintWriter out = new PrintWriter(outputStream);
  		BPhoenixAndPuzzle solver = new BPhoenixAndPuzzle();
  		int testCount = Integer.parseInt(in.next());
  		for (int i = 1; i <= testCount; i++)
  			solver.solve(i, in, out);
  		out.close();
  	}
  
  	static class BPhoenixAndPuzzle {
  		public static MyScanner sc;
  		public static PrintWriter out;
  
  		public void solve(int testNumber, MyScanner sc, PrintWriter out) {
  			BPhoenixAndPuzzle.sc = sc;
  			BPhoenixAndPuzzle.out = out;
  			long n = sc.nextLong();
  			boolean can = true;
  			if (n % 2 != 0) can = false;
  			n /= 2;
  			while (n > 1 && n % 2 == 0) n /= 2;
  			long sq = Math.round(Math.pow(n, 0.5));
  			if (sq * sq != n) can = false;
  
  			out.println(can ? "YES" : "NO");
  		}
  
  	}
  
  	static class MyScanner {
  		private BufferedReader br;
  		private StringTokenizer tokenizer;
  
  		public MyScanner(InputStream is) {
  			br = new BufferedReader(new InputStreamReader(is));
  		}
  
  		public String next() {
  			while (tokenizer == null || !tokenizer.hasMoreTokens()) {
  				try {
  					tokenizer = new StringTokenizer(br.readLine());
  				} catch (IOException e) {
  					throw new RuntimeException(e);
  				}
  			}
  			return tokenizer.nextToken();
  		}
  
  		public long nextLong() {
  			return Long.parseLong(next());
  		}
  
  	}
  }
  
  