Ashishgup and FastestFinger play a game. 

They start with a number n and play in turns. In each turn, a player can make any one of the following moves:

  * Divide n by any of its odd divisors greater than 1. 
  * Subtract 1 from n if n is greater than 1. 



Divisors of a number include the number itself.

The player who is unable to make a move loses the game.

Ashishgup moves first. Determine the winner of the game if both of them play optimally.

Input

The first line contains a single integer t (1 ≤ t ≤ 100) — the number of test cases. The description of the test cases follows.

The only line of each test case contains a single integer — n (1 ≤ n ≤ 10^9).

Output

For each test case, print "Ashishgup" if he wins, and "FastestFinger" otherwise (without quotes).

Example

Input


7
1
2
3
4
5
6
12


Output


FastestFinger
Ashishgup
Ashishgup
FastestFinger
Ashishgup
FastestFinger
Ashishgup

Note

In the first test case, n = 1, Ashishgup cannot make a move. He loses.

In the second test case, n = 2, Ashishgup subtracts 1 on the first move. Now n = 1, FastestFinger cannot make a move, so he loses.

In the third test case, n = 3, Ashishgup divides by 3 on the first move. Now n = 1, FastestFinger cannot make a move, so he loses.

In the last test case, n = 12, Ashishgup divides it by 3. Now n = 4, FastestFinger is forced to subtract 1, and Ashishgup gets 3, so he wins by dividing it by 3.
import java.util.*;
import java.io.*;


public class June20P3 {
	
	public static void SieveOfEratosthenes(int n, boolean[] prime)
	{
	    Arrays.fill(prime, Boolean.TRUE);

	    for (int p=2; p*p<=n; p++)
	    {
	        if (prime[p] == true)
	        {
	            for (int i=p*p; i<prime.length; i += p)
	                prime[i] = false;
	        }
	    }
	}
	
	public static boolean checkPrime(int n) {
		if (n == 2 || n == 3) {
			return true;
		} else {
			int p = 3;
			while(true) {
				if (n % p == 0) {
					return false;
				} else {
					p = p+2;
				}
				if (p >= (int) Math.sqrt(n) + 1) {
					return true;
				}
			}
		}
	}
	
	public static boolean isPower2(int n) {
		if (n == 1) {
			return true;
		} else {
			int temp = n/2;
			if (temp > 1 && temp%2 == 1) {
				return false;
			} else {
				return isPower2(temp);
			}
		}
	}

	public static void main(String[] args) throws IOException {
		BufferedReader b = new BufferedReader(new InputStreamReader(System.in));
		PrintWriter p = new PrintWriter(System.out);
		//BufferedReader b = new BufferedReader(new FileReader("test.in"));
		//int N = 1000000000;
		//boolean[] prime = new boolean[N];
		///SieveOfEratosthenes(N, prime);
		
		int testcases = Integer.parseInt(b.readLine());
		
		for (int ok = 0; ok < testcases; ok++) {
			int n = Integer.parseInt(b.readLine());
			if (n == 1) {
				p.println("FastestFinger");
				continue;
			} else if (n == 2) {
				p.println("Ashishgup");
				continue;
			} else if (n % 2 == 1) {
				p.println("Ashishgup");
				continue;
			} else if (isPower2(n)) {
				p.println("FastestFinger");
			} else if (n % 4 == 0) {
				p.println("Ashishgup");
				continue;
			} else {
				int temp = n/2;
				if (checkPrime(temp)) {
					p.println("FastestFinger");
				} else {
					p.println("Ashishgup");
				}
			}
		}
		
		
		p.close();
		b.close();
	}
}
