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 \leq t \leq 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 \leq n \leq 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$.

Source: codeforces | Difficulty: MEDIUM
Tags: Number theory

Game theory

Mathematics


Solutions:
import math
from collections import defaultdict, Counter, deque
INF = float('inf')

def gcd(a, b):
	while b:
		(a, b) = (b, a % b)
	return a

def isPrime(n):
	if n <= 1:
		return False
	i = 2
	while i ** 2 <= n:
		if n % i == 0:
			return False
		i += 1
	return True

def primeFactor(n):
	if n % 2 == 0:
		return 2
	i = 3
	while i ** 2 <= n:
		if n % i == 0:
			return i
		i += 1
	return n

def main():
	n = int(input())
	if n <= 1:
		print('FastestFinger')
		return
	elif n <= 3:
		print('Ashishgup')
		return
	if n % 2 == 1:
		print('Ashishgup')
	elif 2 ** int(math.log(n, 2)) == n:
		print('FastestFinger')
	elif isPrime(n // 2):
		print('FastestFinger')
	else:
		print('Ashishgup')
t = int(input())
for _ in range(t):
	main()


import math

def isPrime(n):
	for i in range(2, int(math.sqrt(n)) + 1):
		if n % i == 0:
			return 0
	return 1

def game(n):
	if n == 2 or n == 3:
		return p1
	if n % 2 == 1 and n != 1:
		return p1
	if n & n - 1 == 0:
		return p2
	if n == 1:
		return p2
	if isPrime(n // 2):
		return p2
	return p1
t = int(input())
for _ in range(t):
	n = int(input())
	p1 = 'Ashishgup'
	p2 = 'FastestFinger'
	print(game(n))


import os
import sys
from math import *
from collections import *
from fractions import *
from bisect import *
from heapq import *
from io import BytesIO, IOBase

def vsInput():
	sys.stdin = open('input.txt', 'r')
	sys.stdout = open('output.txt', 'w')
BUFSIZE = 8192

class FastIO(IOBase):
	newlines = 0

	def __init__(self, file):
		self._fd = file.fileno()
		self.buffer = BytesIO()
		self.writable = 'x' in file.mode or 'r' not in file.mode
		self.write = self.buffer.write if self.writable else None

	def read(self):
		while True:
			b = os.read(self._fd, max(os.fstat(self._fd).st_size, BUFSIZE))
			if not b:
				break
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines = 0
		return self.buffer.read()

	def readline(self):
		while self.newlines == 0:
			b = os.read(self._fd, max(os.fstat(self._fd).st_size, BUFSIZE))
			self.newlines = b.count(b'\n') + (not b)
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines -= 1
		return self.buffer.readline()

	def flush(self):
		if self.writable:
			os.write(self._fd, self.buffer.getvalue())
			(self.buffer.truncate(0), self.buffer.seek(0))

class IOWrapper(IOBase):

	def __init__(self, file):
		self.buffer = FastIO(file)
		self.flush = self.buffer.flush
		self.writable = self.buffer.writable
		self.write = lambda s: self.buffer.write(s.encode('ascii'))
		self.read = lambda : self.buffer.read().decode('ascii')
		self.readline = lambda : self.buffer.readline().decode('ascii')
(sys.stdin, sys.stdout) = (IOWrapper(sys.stdin), IOWrapper(sys.stdout))
input = lambda : sys.stdin.readline().rstrip('\r\n')

def value():
	return tuple(map(int, input().split()))

def array():
	return [int(i) for i in input().split()]

def Int():
	return int(input())

def Str():
	return input()

def arrayS():
	return [i for i in input().split()]

def factors(n):
	ans = []
	prod = 1
	for i in range(3, int(sqrt(n)) + 1, 2):
		while n % i == 0:
			ans.append(i)
			prod *= i
			n = n // i
	if n > 2:
		prod *= n
		ans.append(n)
	if len(ans) == 1:
		return prod
	return prod // ans[-1]

def oddFactor(n):
	k = int(log2(n))
	i = 1
	while i <= k:
		factor = 2 ** i
		if n % factor == 0:
			if n // factor % 2 == 1:
				if i == 1:
					return factors(n // factor)
				else:
					return n // factor
		i += 1
for _ in range(Int()):
	n = Int()
	p1 = 'Ashishgup'
	p2 = 'FastestFinger'
	win = p2
	prev = p2
	select = p1
	while n != 1:
		if n == 2:
			win = select
			break
		if log2(n) == int(log2(n)):
			win = prev
			break
		if n % 2:
			win = select
			break
		n //= oddFactor(n)
		prev = select
		if select == p1:
			select = p2
		else:
			select = p1
	print(win)


from sys import stdin
input = lambda : stdin.readline().strip()
char = [chr(i) for i in range(97, 123)]
CHAR = [chr(i) for i in range(65, 91)]
mp = lambda : list(map(int, input().split()))
INT = lambda : int(input())
rn = lambda : range(INT())
from math import ceil, sqrt, factorial, gcd

def isprime(n):
	for i in range(2, int(n ** (1 / 2)) + 2):
		if n % i == 0:
			return False
	return True
for _ in rn():
	n = INT()
	if n == 1:
		print('FastestFinger')
	elif n % 2 == 1 or n == 2:
		print('Ashishgup')
	else:
		k = set(bin(n)[3:])
		if len(k) == 1:
			print('FastestFinger')
		elif n % 4 == 0:
			print('Ashishgup')
		elif isprime(n // 2):
			print('FastestFinger')
		else:
			print('Ashishgup')


def isPrime(n, i):
	if n <= 1:
		return False
	if n <= 3:
		return True
	if n % 2 == 0 or n % 3 == 0:
		return False
	while i * i <= n:
		if n % i == 0 or n % (i + 2) == 0:
			return False
		i += 6
	return True
for _ in range(int(input())):
	(n, k) = (int(input()), 0)
	if n == 1:
		ans = 2
	if n == 2:
		ans = 1
	if n > 2:
		if n % 2 == 1:
			ans = 1
		else:
			while n % 2 == 0:
				k += 1
				n //= 2
			if n == 1 and k > 1:
				ans = 2
			if n > 1 and k == 1:
				ans = 2 if isPrime(n, 5) == True else 1
			if n > 1 and k > 1:
				ans = 1
	print('Ashishgup') if ans == 1 else print('FastestFinger')


import math
t = int(input())
for helloworld in range(t):
	n = int(input())
	hfd = int(n)
	d = []
	for i in range(2, int(math.sqrt(n) + 1)):
		while n % i == 0:
			d.append(i)
			n = n // i
	if n > 1:
		d.append(n)
	dc = 0
	dce = 0
	for i in range(len(d)):
		if d[i] % 2 == 1:
			dc += 1
		else:
			dce += 1
	if dc > 1 or (hfd % 2 == 1 and hfd > 1) or hfd == 2:
		print('Ashishgup')
	elif d.count(2) == 1 or dc == 0:
		print('FastestFinger')
	else:
		print('Ashishgup')


import math
for t in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 == 1:
		print('Ashishgup')
	else:
		count = 0
		while n % 2 == 0:
			n //= 2
			count += 1
		k = 1
		for i in range(3, int(math.sqrt(n)) + 1):
			if n % i == 0:
				k = i
				break
		if count == 1:
			if k == 1:
				print('FastestFinger')
			else:
				print('Ashishgup')
		elif n != 1:
			print('Ashishgup')
		else:
			print('FastestFinger')


import sys
input = sys.stdin.readline
t = int(input())
for tests in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 == 1:
		print('Ashishgup')
	elif n == 2:
		print('Ashishgup')
	else:
		k = 0
		for i in range(3, 10 ** 5 + 1, 2):
			while n % i == 0:
				n //= i
				k += 1
		l = 0
		while n % 2 == 0:
			l += 1
			n //= 2
		if n != 1:
			k += 1
		if l == 1:
			if k == 0:
				print('Ashishgup')
			elif k == 1:
				print('FastestFinger')
			else:
				print('Ashishgup')
		elif k == 0:
			print('FastestFinger')
		else:
			print('Ashishgup')


import math

def isPrime(x):
	for i in range(2, math.floor(math.sqrt(x)) + 1):
		if x % i == 0:
			return False
	return True

def solve():
	n = int(input())
	steps = 0
	while n != 1:
		if n % 2 != 0:
			n //= n
		else:
			x = n
			while x % 2 == 0:
				x //= 2
			if x == 1:
				n -= 1
			elif n % 4 == 0:
				n //= x
			elif isPrime(x):
				n -= 1
			else:
				n = 1
		steps += 1
	if steps % 2 == 0:
		return 'FastestFinger'
	return 'Ashishgup'
t = int(input())
for case in range(t):
	print(solve())


import math
t = int(input())

def isPower(n):
	if n == 0:
		return False
	while n != 1:
		if n % 2 != 0:
			return False
		n = n // 2
	return True
for _ in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 != 0:
		print('Ashishgup')
	elif isPower(n):
		print('FastestFinger')
	else:
		x = n // 2
		flag = 0
		for i in range(2, int(x ** 0.5) + 1):
			if x % i == 0:
				flag = 1
				break
		if flag == 1:
			print('Ashishgup')
		else:
			print('FastestFinger')


import math

def printDivisors(n):
	i = 1
	l = []
	while i <= math.sqrt(n):
		if n % i == 0:
			if n / i == i:
				l.append(i)
			else:
				l.append(i)
				l.append(n // i)
		i = i + 1
	l.sort()
	l.pop(0)
	l.pop()
	return l
for t in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 != 0:
		print('Ashishgup')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 == 0:
		x = n
		while x % 2 == 0:
			x = x // 2
			if x == 1:
				break
		if x == 1:
			print('FastestFinger')
		else:
			n //= x
			if n == 2:
				div = printDivisors(x)
				if len(div) == 0:
					print('FastestFinger')
				else:
					print('Ashishgup')
			else:
				print('Ashishgup')


def make_divisors(n):
	(lower_divisors, upper_divisors) = ([], [])
	i = 1
	while i * i <= n:
		if n % i == 0:
			lower_divisors.append(i)
			if i != n // i:
				upper_divisors.append(n // i)
		i += 1
	return lower_divisors + upper_divisors[::-1]
t = int(input())
for _ in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 == 1:
		print('Ashishgup')
	else:
		divisors = make_divisors(n)
		b = False
		for d in divisors:
			if d == 1:
				continue
			elif d % 2 == 1:
				if n // d % 2 == 0:
					if n // d == 2:
						pass
					else:
						print('Ashishgup')
						b = True
						break
		if not b:
			print('FastestFinger')


import math

def primeFactors(n):
	while n % 2 == 0:
		x.append(2)
		n = n / 2
	for i in range(3, int(math.sqrt(n)) + 1, 2):
		while n % i == 0:
			x.append(i)
			n = n / i
	if n > 2:
		x.append(n)
m = 10 ** 9 + 7
t = int(input())
while t:
	t -= 1
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	if n % 2 != 0 or n == 2:
		print('Ashishgup')
		continue
	else:
		x = []
		primeFactors(n / 2)
		x = list(filter(2 .__ne__, x))
		if len(x) == 0:
			print('FastestFinger')
		elif len(x) == 1:
			if n % 4 == 0:
				print('Ashishgup')
			else:
				print('FastestFinger')
		else:
			print('Ashishgup')


from math import sqrt

def checker1(n):
	while n > 4:
		n = n / 2
	return True if n == 4 else False

def checker2(n):
	if n % 2 == 1 or n == 2:
		return False
	n = int(n / 2)
	for i in range(2, int(sqrt(n)) + 1):
		if n % i == 0:
			return False
	return True
for _ in range(int(input())):
	n = int(input())
	if n == 1 or checker1(n) or checker2(n):
		print('FastestFinger')
	else:
		print('Ashishgup')


from sys import stdin, stdout
import math

def is_prime(x):
	import math
	if x < 2:
		return False
	for i in range(2, int(math.sqrt(x)) + 1):
		if x % i == 0:
			return False
	return True
t = int(stdin.readline())
for _ in range(t):
	n = int(stdin.readline())
	if n == 1:
		print('FastestFinger')
		continue
	if n == 2 or n % 2 == 1:
		print('Ashishgup')
		continue
	cnt = 0
	while n > 1 and n % 2 == 0:
		cnt += 1
		n //= 2
	if n == 1:
		print('FastestFinger')
		continue
	if cnt == 1:
		if is_prime(n):
			print('FastestFinger')
		else:
			print('Ashishgup')
	else:
		print('Ashishgup')


from math import ceil

def read_int():
	return int(input())

def read_string_array():
	return input().split()

def read_int_array():
	return [int(_) for _ in read_string_array()]

def read_line():
	return input()

def factors(n):
	f = set()
	for i in range(2, int(n ** 0.5 + 1)):
		if n % i == 0 and i % 2 == 1:
			f.add(i)
		if n % i == 0 and n // i % 2 == 1:
			f.add(n // i)
	return f

def solve(n, turn=False):
	if n == 1:
		return not turn
	divs = factors(n)
	if n % 2 == 1:
		return solve(1, not turn)
	elif divs:
		if len(divs) == 1 or (n & 1 == 0 and n & 2 == 0):
			return solve(n // max(divs), not turn)
		else:
			return solve(n // max(divs) * min(divs), not turn)
	else:
		return solve(n - 1, not turn)
T = read_int()
players = ('Ashishgup', 'FastestFinger')
for _ in range(T):
	N = read_int()
	print(players[solve(N)])


import sys
import math
import collections
from sys import stdin, stdout, setrecursionlimit
import bisect as bs
setrecursionlimit(2 ** 20)
M = 10 ** 9 + 7
T = int(stdin.readline())
for _ in range(T):
	n = int(stdin.readline())
	if n == 1:
		print('FastestFinger')
		continue
	if n == 2 or n % 2 == 1:
		print('Ashishgup')
		continue
	c1 = 0
	while n % 2 == 0:
		c1 += 1
		n = n // 2
	if n == 1:
		print('FastestFinger')
		continue
	if c1 != 1:
		print('Ashishgup')
		continue
	res = False
	for i in range(3, int(math.sqrt(n)) + 1, 2):
		if n % i == 0:
			res = True
			break
	if res:
		print('Ashishgup')
	else:
		print('FastestFinger')


def is_prime(n):
	test = True
	for i in range(2, int(n ** 0.5) + 2):
		if n % i == 0:
			test = False
	return test
t = int(input())
for q in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 == 1:
		print('Ashishgup')
	else:
		nb2 = 0
		test = True
		while n > 1:
			if n % 2 == 1 and n != 1:
				test = False
				break
			n = n // 2
			nb2 += 1
		if test == False:
			if nb2 > 1:
				print('Ashishgup')
			elif is_prime(n):
				print('FastestFinger')
			else:
				print('Ashishgup')
		else:
			print('FastestFinger')


t = int(input())
import math

def factorize(n):
	d = {}
	temp = int(math.sqrt(n)) + 1
	for i in range(2, temp):
		while n % i == 0:
			n //= i
			if i in d:
				d[i] += 1
			else:
				d[i] = 1
	if d == {}:
		d[n] = 1
	elif n in d:
		d[n] += 1
	elif n != 1:
		d[n] = 1
	return d
for _ in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 == 1:
		print('Ashishgup')
	elif n == 2:
		print('Ashishgup')
	else:
		d = factorize(n)
		if len(d) == 1:
			print('FastestFinger')
		elif d[2] >= 2:
			print('Ashishgup')
		else:
			c = 0
			for (k, v) in d.items():
				if k == 2:
					continue
				else:
					c += v
			if c >= 2:
				print('Ashishgup')
			else:
				print('FastestFinger')


def odd_part(n):
	while n % 2 == 0:
		n = n // 2
	return n

def winner(n):
	if n in dp:
		return dp[n]
	if n <= 1:
		return 0
	if n % 2 == 1:
		return 1
	win = 0
	m = odd_part(n)
	k = n // m
	win = win or 1 - winner(n - 1)
	for i in range(1, m):
		if i * i > m or win == 1:
			break
		if i % 2 == 1 and m % i == 0:
			if i == 1:
				win = win or 1 - winner(k * i)
			else:
				win = win or 1 - winner(k * m // i) or 1 - winner(k * i)
	dp[n] = win
	return win
t = int(input())
dp = {}
names = ['Ashishgup', 'FastestFinger']
for _ in range(t):
	n = int(input())
	win = winner(n)
	print(names[1 - win])


import math

def prime(n):
	for p in range(2, int(n ** 0.5) + 1):
		if n % p == 0:
			return False
			break
	return True
for i in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 != 0:
		print('Ashishgup')
	elif math.log(n, 2) % 1 <= 1e-06:
		print('FastestFinger')
	elif n % 4 == 0:
		print('Ashishgup')
	elif prime(n / 2):
		print('FastestFinger')
	else:
		print('Ashishgup')


win = ['FastestFinger', 'Ashishgup']

def factorise(n):
	(even, odd) = (0, 0)
	while not n % 2:
		even += 1
		n //= 2
	for i in range(3, int(pow(n, 0.5)) + 1, 2):
		while not n % i:
			odd += 1
			n //= i
	if n > 1:
		odd += 1
	return (even, odd)
for _ in range(int(input())):
	n = int(input())
	(even, odd) = factorise(n)
	if even == 1:
		if odd == 1:
			print(win[0])
		else:
			print(win[1])
	elif odd == 0:
		print(win[0])
	else:
		print(win[1])


def factorise(n):
	dic = {}
	dic[2] = 0
	if n % 2 == 0:
		while n % 2 == 0:
			if 2 in dic:
				dic[2] += 1
			n = n // 2
	for i in range(3, int(n ** 0.5 + 1)):
		if n % i == 0:
			while n % i == 0:
				if i in dic:
					dic[i] += 1
				else:
					dic[i] = 1
				n = n // i
	if n > 2:
		dic[n] = 1
	return dic
t = int(input())
for _ in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 == 1:
		print('Ashishgup')
	else:
		dic = factorise(n)
		odd_pow = 0
		for i in dic:
			if i % 2 == 1:
				odd_pow += dic[i]
		if odd_pow > 0:
			if odd_pow > 1:
				print('Ashishgup')
			elif dic[2] == 1:
				print('FastestFinger')
			else:
				print('Ashishgup')
		elif dic[2] == 1:
			print('Ashishgup')
		else:
			print('FastestFinger')


t = int(input())
cases = []
for i in range(t):
	n = int(input())
	cases.append(n)

def ff_count(number):
	evens = 0
	odds = 0
	while number % 2 == 0:
		evens += 1
		number /= 2
	if number != 1:
		divisor = 3
		while divisor <= number ** (1 / 2):
			if number % divisor == 0:
				odds += 1
				number /= divisor
			else:
				divisor += 2
		if number != 1:
			odds += 1
	return (evens, odds)
for n in cases:
	if n == 1:
		print('FastestFinger')
		continue
	elif n == 2:
		print('Ashishgup')
		continue
	a = n
	if a % 2 == 1:
		print('Ashishgup')
	else:
		(evens, odds) = ff_count(n)
		if evens == 1:
			if odds == 1:
				print('FastestFinger')
			else:
				print('Ashishgup')
		elif odds >= 1:
			print('Ashishgup')
		else:
			print('FastestFinger')


t = int(input())
for test in range(t):
	a = int(input())
	if a == 2:
		pass
	elif bin(a).count('1') == 1:
		print('FastestFinger')
		continue
	elif a % 2 == 0:
		a //= 2
		w = True
		for i in range(2, int(a ** 0.5) + 1):
			if a % i == 0:
				w = False
				break
		if w:
			print('FastestFinger')
			continue
	print('Ashishgup')


import math

def primeFactors(n):
	a = []
	while n % 2 == 0:
		a.append(2)
		n = int(n / 2)
	for i in range(3, int(math.sqrt(n)) + 1, 2):
		while n % i == 0:
			a.append(int(i))
			n = int(n / i)
	if n > 2:
		a.append(n)
	return a
t = int(input())
for i in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 != 0:
		print('Ashishgup')
	else:
		c = 0
		a = primeFactors(n)
		if a.count(2) == len(a):
			print('FastestFinger')
		elif a.count(2) == 1:
			if len(a) == 2:
				print('FastestFinger')
			else:
				print('Ashishgup')
		else:
			print('Ashishgup')


import math

def Log2(x):
	return math.log10(x) / math.log10(2)

def isPowerOfTwo(n):
	return math.ceil(Log2(n)) == math.floor(Log2(n))

def isPrime(n):
	if n % 2 == 0:
		return n == 2
	d = 3
	while d * d <= n and n % d != 0:
		d += 2
	return d * d > n
t = int(input())
for i in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 == 1:
		print('Ashishgup')
	elif isPowerOfTwo(n):
		print('FastestFinger')
	elif n % 4 == 0:
		print('Ashishgup')
	else:
		temp = n // 2
		if isPrime(temp):
			print('FastestFinger')
		else:
			print('Ashishgup')


def f(n):
	i = 0
	if n == 2:
		return 'Ashishgup'
	while n % 2 == 0:
		n //= 2
		i += 1
	if n == 1:
		return 'FastestFinger'
	if i >= 2 or i == 0:
		return 'Ashishgup'
	for t in range(2, int(n ** (1 / 2)) + 1):
		if n % t == 0:
			return 'Ashishgup'
	return 'FastestFinger'
t = int(input())
while t > 0:
	n = int(input())
	print(f(n))
	t -= 1


from collections import deque
from collections import OrderedDict
import math
from math import sqrt
from math import ceil
import sys
import os
from io import BytesIO
import threading
import bisect
import heapq
input = lambda : sys.stdin.readline().rstrip('\r\n')
arrCS = [0] * 50000
arrSim = list()

def eratos():
	for i in range(2, len(arrCS)):
		if i * i > len(arrCS):
			break
		if arrCS[i] == 0:
			for j in range(i * 2, len(arrCS), i):
				arrCS[j] = 1
	for i in range(2, len(arrCS)):
		if arrCS[i] == 0:
			arrSim.append(i)
for t in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	elif n == 2:
		print('Ashishgup')
		continue
	elif n % 2 == 1:
		print('Ashishgup')
		continue
	eratos()
	sqrN = int(ceil(sqrt(n)))
	cDiv = 0
	cDiv2 = 0
	while n % 2 == 0:
		n /= 2
		cDiv2 += 1
	for i in range(1, len(arrSim)):
		if arrSim[i] * arrSim[i] > n:
			break
		while n % arrSim[i] == 0:
			n /= arrSim[i]
			cDiv += 1
	if n != 1:
		cDiv += 1
	if cDiv2 == 1:
		if cDiv == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')
	elif cDiv == 0:
		print('FastestFinger')
	else:
		print('Ashishgup')


t = int(input())
while t != 0:
	n = int(input())
	if n % 2 == 0:
		count = 0
		f2 = 0
		while n % 2 == 0:
			f1 = 0
			maxi = -1
			for i in range(3, int(pow(n, 0.5) + 1)):
				if n % i == 0:
					if i % 2 == 1:
						if i > maxi:
							maxi = i
					if n // i % 2 == 1:
						if n // i > maxi:
							maxi = n // i
			if maxi != -1:
				n = n // maxi
				count += 1
				f1 = 1
			if n == 2:
				f2 = 1
			if f1 == 0:
				n -= 1
				count += 1
		if f2 == 1:
			if count % 2 == 1:
				print('Ashishgup')
			else:
				print('FastestFinger')
		elif count % 2 == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')
	elif n == 1:
		print('FastestFinger')
	else:
		print('Ashishgup')
	t -= 1


from collections import deque
import sys
import bisect

def inp():
	return sys.stdin.readline().strip()
for _ in range(int(inp())):
	n = int(inp())
	turn = True
	while n != 1:
		if n % 2 == 1:
			n = 1
		elif n & n - 1 == 0:
			n -= 1
		else:
			ct = 1
			while n % 2 == 0:
				ct *= 2
				n //= 2
			if ct == 2:
				i = 3
				f = False
				while i * i <= n:
					if n % i == 0:
						f = True
						break
					i += 2
				if f:
					n = i * 2
			else:
				n = ct
		turn = not turn
	if not turn:
		print('Ashishgup')
	else:
		print('FastestFinger')


def isPowerOfTwo(x):
	return x and (not x & x - 1)

def isPrime(n):
	if n <= 1:
		return False
	if n <= 3:
		return True
	if n % 2 == 0 or n % 3 == 0:
		return False
	i = 5
	while i * i <= n:
		if n % i == 0 or n % (i + 2) == 0:
			return False
		i = i + 6
	return True
n = int(input())
for i in range(n):
	a = int(input())
	if a == 1:
		print('FastestFinger')
	elif a % 2 == 1 or a == 2:
		print('Ashishgup')
	elif isPrime(a // 2):
		print('FastestFinger')
	elif isPowerOfTwo(a):
		print('FastestFinger')
	else:
		print('Ashishgup')


import sys
input = sys.stdin.readline
from collections import *

def factorize(n):
	fct = []
	for i in range(2, int(n ** 0.5) + 1):
		c = 0
		while n % i == 0:
			n //= i
			c += 1
		if c > 0:
			fct.append((i, c))
	if n > 1:
		fct.append((n, 1))
	return fct
t = int(input())
for _ in range(t):
	n = int(input())
	fct = factorize(n)
	cnt = defaultdict(int)
	tot = 0
	for (f, c) in fct:
		cnt[f] = c
		tot += c
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif cnt[2] == 0:
		print('Ashishgup')
	elif cnt[2] == tot:
		print('FastestFinger')
	elif cnt[2] >= 2:
		print('Ashishgup')
	elif cnt[2] == 1:
		if tot == cnt[2] + 1:
			print('FastestFinger')
		else:
			print('Ashishgup')


import math

def isprime(n):
	for i in range(2, int(math.sqrt(n)) + 1):
		if n % i == 0:
			return False
	return True
t = int(input())
f = 'FastestFinger'
a = 'Ashishgup'
for _ in range(t):
	n = int(input())
	if n == 1:
		print(f)
	elif n == 2:
		print(a)
	elif n % 2 == 1:
		print(a)
	elif not n & n - 1:
		print(f)
	elif isprime(n // 2):
		print(f)
	else:
		print(a)


import sys, math
input = sys.stdin.readline
t = int(input())
for r in range(t):
	n = int(input())
	flag2 = False
	logn = len(bin(n)) - 3
	if 2 ** logn == n:
		flag2 = True
	if n != 1 and n % 2 != 0 or (n % 4 == 0 and flag2 == False) or n == 2:
		print('Ashishgup')
	elif n % 2 == 0 and flag2 == False:
		flag = False
		n /= 2
		i = 2
		while i * i <= n:
			if n % i == 0:
				flag = True
			i += 1
		if flag == True:
			print('Ashishgup')
		else:
			print('FastestFinger')
	else:
		print('FastestFinger')


import bisect
import sys
import math
input = sys.stdin.readline
import functools
from collections import defaultdict

def inp():
	return int(input())

def inlt():
	return list(map(int, input().split()))

def insr():
	s = input()
	return list(s[:len(s) - 1])

def invr():
	return map(int, input().split())

@functools.lru_cache(None)
def canWin(n):
	if n == 1:
		return False
	if n % 2 == 1:
		return True
	if canWin(n - 1) == False:
		return True
	i = 3
	while i * i <= n:
		if n % i == 0:
			if i % 2 == 1 and canWin(n // i) == False:
				return True
			j = n // i
			if j % 2 == 1 and canWin(i) == False:
				return True
		i += 1
	return False

def solve(case):
	n = inp()
	return 'Ashishgup' if canWin(n) else 'FastestFinger'
if len(sys.argv) > 1 and sys.argv[1].startswith('input'):
	f = open('./' + sys.argv[1], 'r')
	input = f.readline
T = inp()
for i in range(T):
	res = solve(i + 1)
	print(str(res))


def isPrime(n):
	x = int(n ** 0.5)
	for i in range(3, x + 1, 2):
		if n % i == 0:
			return False
			break
	return True
for t in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 != 0:
		print('Ashishgup')
	else:
		d = 0
		i = 0
		while n % 2 ** i == 0:
			i += 1
		i -= 1
		x = n // 2 ** i
		if x == 1:
			print('FastestFinger')
		elif n % 4 != 0:
			if isPrime(x):
				print('FastestFinger')
			else:
				print('Ashishgup')
		else:
			print('Ashishgup')


import math
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 == 1:
		print('Ashishgup')
	else:
		h = []
		for i in range(1, int(math.sqrt(n) + 1)):
			if n % i == 0:
				if n / i == i:
					continue
				else:
					if i != 1:
						f = i % 2
						if f == 1:
							h.append(i)
					if int(n / i) != 1:
						f = int(n / i) % 2
						if f == 1:
							h.append(int(n / i))
		if len(h) == 0:
			print('FastestFinger')
		else:
			max = min(h)
			ans = n // max
			if ans == 2:
				print('FastestFinger')
			else:
				print('Ashishgup')


from os import path
import sys
from functools import cmp_to_key as ctk
from collections import deque, defaultdict as dd
from bisect import bisect, bisect_left, bisect_right, insort, insort_left, insort_right
from itertools import permutations
from datetime import datetime
from math import ceil, sqrt, log, gcd

def ii():
	return int(input())

def si():
	return input()

def mi():
	return map(int, input().split())

def li():
	return list(mi())
abc = 'abcdefghijklmnopqrstuvwxyz'
abd = {'a': 0, 'b': 1, 'c': 2, 'd': 3, 'e': 4, 'f': 5, 'g': 6, 'h': 7, 'i': 8, 'j': 9, 'k': 10, 'l': 11, 'm': 12, 'n': 13, 'o': 14, 'p': 15, 'q': 16, 'r': 17, 's': 18, 't': 19, 'u': 20, 'v': 21, 'w': 22, 'x': 23, 'y': 24, 'z': 25}
mod = 1000000007
inf = float('inf')
vow = ['a', 'e', 'i', 'o', 'u']
(dx, dy) = ([-1, 1, 0, 0], [0, 0, 1, -1])

def bo(i):
	return ord(i) - ord('a')

def solve():
	for _ in range(ii()):
		n = ii()
		n1 = n
		if n == 1:
			print('FastestFinger')
			continue
		elif n == 2 or n & 1:
			print('Ashishgup')
			continue
		c1 = 0
		for i in range(2, int(sqrt(n)) + 1):
			while n % i == 0:
				if i & 1:
					c1 += 1
				n //= i
		if n > 1:
			c1 += 1
		f = 0
		if n1 % 4 == 0:
			if c1:
				f = 1
		if c1 > 1 or f == 1:
			print('Ashishgup')
		else:
			print('FastestFinger')
solve()


import math
import sys
from itertools import permutations
input = sys.stdin.readline

def factor(n):
	ans = []
	while n % 2 == 0:
		ans.append(2)
		n = n // 2
	for i in range(3, int(math.sqrt(n) + 1), 2):
		while n % i == 0:
			ans.append(i)
			n = n // i
	if n > 2:
		ans.append(n)
	return ans
t = int(input())
for i in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 == 1:
		print('Ashishgup')
	else:
		arr = factor(n)
		c2 = arr.count(2)
		odd = len(arr) - c2
		if c2 > 1:
			if odd >= 1:
				print('Ashishgup')
			else:
				print('FastestFinger')
		elif c2 == 1:
			if odd == 1:
				print('FastestFinger')
			else:
				print('Ashishgup')


T = int(input())
for i in range(0, T):
	flag = 0
	n = int(input())
	while True:
		if n == 1:
			flag += 1
			break
		elif n % 2 == 1:
			break
		elif n == 2:
			break
		else:
			tar = n
			mark = 0
			l1_div = 1
			for j in range(2, int(pow(tar, 0.5)) + 1):
				if tar % j == 0:
					if j % 2 != 0:
						mark = 1
						if l1_div < j:
							l1_div = j
					else:
						tar2 = int(tar // j)
						if tar2 % 2 != 0:
							mark = 1
							if l1_div < tar2:
								l1_div = tar2
			mark_1 = 0
			l2_div = 1
			for j in range(2, int(pow(tar, 0.5)) + 1):
				if tar % j == 0:
					if j % 2 != 0:
						mark_1 = 1
						if l2_div < j and j != l1_div:
							l2_div = j
					else:
						tar2 = int(tar // j)
						if tar2 % 2 != 0:
							mark_1 = 1
							if l2_div < tar2 and tar2 != l1_div:
								l2_div = tar2
			if l1_div == 1:
				mark = 0
			if l2_div == 1:
				mark_1 = 0
			if mark_1 == 1:
				if n // l1_div == 2:
					n = n // l2_div
					flag += 1
				else:
					n = n // l1_div
					flag += 1
			elif mark_1 == 0 and mark == 1:
				n = n // l1_div
				flag += 1
			else:
				flag += 1
				break
	if flag % 2 == 0:
		print('Ashishgup')
	else:
		print('FastestFinger')


import sys
import math as mt
input = sys.stdin.buffer.readline
t = int(input())

def countDivisors(n):
	count = 0
	l = []
	for i in range(1, int(mt.sqrt(n)) + 2):
		if n % i == 0:
			if n // i == i and i % 2 != 0 and (i != 1):
				l.append(i)
				count = count + 1
			else:
				if n // i % 2 != 0 and n // i != 1:
					l.append(n // i)
					count += 1
				if i % 2 != 0 and i != 1:
					l.append(i)
					count += 1
	return len(set(l))

def power(n):
	j = 2
	p = 1
	while 2 * j <= n:
		j *= 2
		p += 1
	return p
for __ in range(t):
	n = int(input())
	if n % 2 != 0:
		if n == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')
	else:
		x = power(n)
		if 2 ** x == n and x != 1:
			print('FastestFinger')
		elif n == 2 or n % 4 == 0:
			print('Ashishgup')
		else:
			x1 = countDivisors(n)
			if x1 >= 2:
				print('Ashishgup')
			else:
				print('FastestFinger')


from math import sqrt
for t in range(int(input())):
	n = int(input())
	count = 0
	for i in range(2000000):
		if n % 2 != 0:
			break
		count += 1
		n = n / 2
	if n == 1:
		if count != 1:
			print('FastestFinger')
		else:
			print('Ashishgup')
	elif count == 0 or count >= 2:
		print('Ashishgup')
	elif count == 1:
		a = 0
		for j in range(2, int(sqrt(n)) + 2):
			if n / j == n // j:
				a += 2
		if a == 0:
			print('FastestFinger')
		else:
			print('Ashishgup')


import os
import sys
from io import BytesIO, IOBase
BUFSIZE = 8192

class FastIO(IOBase):
	newlines = 0

	def __init__(self, file):
		self._fd = file.fileno()
		self.buffer = BytesIO()
		self.writable = 'x' in file.mode or 'r' not in file.mode
		self.write = self.buffer.write if self.writable else None

	def read(self):
		while True:
			b = os.read(self._fd, max(os.fstat(self._fd).st_size, BUFSIZE))
			if not b:
				break
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines = 0
		return self.buffer.read()

	def readline(self):
		while self.newlines == 0:
			b = os.read(self._fd, max(os.fstat(self._fd).st_size, BUFSIZE))
			self.newlines = b.count(b'\n') + (not b)
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines -= 1
		return self.buffer.readline()

	def flush(self):
		if self.writable:
			os.write(self._fd, self.buffer.getvalue())
			(self.buffer.truncate(0), self.buffer.seek(0))

class IOWrapper(IOBase):

	def __init__(self, file):
		self.buffer = FastIO(file)
		self.flush = self.buffer.flush
		self.writable = self.buffer.writable
		self.write = lambda s: self.buffer.write(s.encode('ascii'))
		self.read = lambda : self.buffer.read().decode('ascii')
		self.readline = lambda : self.buffer.readline().decode('ascii')
(sys.stdin, sys.stdout) = (IOWrapper(sys.stdin), IOWrapper(sys.stdout))
input = lambda : sys.stdin.readline().rstrip('\r\n')

def list2d(a, b, c):
	return [[c] * b for i in range(a)]

def list3d(a, b, c, d):
	return [[[d] * c for j in range(b)] for i in range(a)]

def list4d(a, b, c, d, e):
	return [[[[e] * d for j in range(c)] for j in range(b)] for i in range(a)]

def ceil(x, y=1):
	return int(-(-x // y))

def Yes():
	print('Yes')

def No():
	print('No')

def YES():
	print('YES')

def NO():
	print('NO')
INF = 10 ** 18
MOD = 10 ** 9 + 7
Ri = lambda : [int(x) for x in sys.stdin.readline().split()]
ri = lambda : sys.stdin.readline().strip()
for _ in range(int(ri())):
	n = int(ri())
	if n == 1:
		print('FastestFinger')
	elif n % 2 == 1:
		print('Ashishgup')
	elif n == 2:
		print('Ashishgup')
	else:
		p = 3
		oflag = False
		cnt = 0
		cnt2 = 0
		while n % 2 == 0:
			n = n // 2
			cnt2 += 1
		while p * p <= n:
			while n % p == 0:
				n = n // p
				cnt += 1
			p += 2
		if n != 1:
			cnt += 1
		if cnt == 0:
			print('FastestFinger')
		elif cnt2 > 1:
			print('Ashishgup')
		elif cnt > 1:
			print('Ashishgup')
		else:
			print('FastestFinger')


masks = []
for i in range(32):
	masks.append(pow(2, i))
for _ in range(int(input())):
	a = int(input())
	if a == 1:
		print('FastestFinger')
		continue
	if a == 2 or a % 2 == 1:
		print('Ashishgup')
		continue
	if a in masks:
		print('FastestFinger')
		continue
	cnt = 0
	i = 2
	deg2 = 0
	while i * i <= a:
		while a % i == 0:
			if i == 2:
				deg2 += 1
			else:
				cnt += 1
			a /= i
		i += 1
	if a > 1:
		cnt += 1
	if cnt == 1 and deg2 == 1:
		print('FastestFinger')
	else:
		print('Ashishgup')


production = True
import sys, math, collections

def input(input_format=0, multi=0):
	if multi > 0:
		return [input(input_format) for i in range(multi)]
	else:
		next_line = sys.stdin.readline()[:-1]
		if input_format >= 10:
			use_list = False
			input_format = int(str(input_format)[-1])
		else:
			use_list = True
		if input_format == 0:
			formatted_input = [next_line]
		elif input_format == 1:
			formatted_input = list(map(int, next_line.split()))
		elif input_format == 2:
			formatted_input = list(map(float, next_line.split()))
		elif input_format == 3:
			formatted_input = list(next_line)
		elif input_format == 4:
			formatted_input = (lambda x: [x[0], list(map(int, x[1:]))])(next_line.split())
		elif input_format == 5:
			formatted_input = (lambda x: [x[0], list(map(float, x[1:]))])(next_line.split())
		elif input_format == 6:
			formatted_input = next_line.split()
		else:
			formatted_input = [next_line]
		return formatted_input if use_list else formatted_input[0]

def out(output_line, output_format=0, newline=True):
	formatted_output = ''
	if output_format == 0:
		formatted_output = str(output_line)
	elif output_format == 1:
		formatted_output = ' '.join(map(str, output_line))
	elif output_format == 1:
		formatted_output = '\n'.join(map(str, output_line))
	print(formatted_output, end='\n' if newline else '')

def log(*args):
	if not production:
		print('$$$', end='')
		print(*args)
enum = enumerate

def y(n):
	c = 0
	b = set()
	for i in range(2, math.ceil(n ** 0.5) + 1):
		if not n % i:
			for j in [i, n // i]:
				if j % 2 and j not in b:
					b.add(j)
					c += 1
					if not n % j ** 2:
						c += 1
	return c

def solve():
	for i in range(30):
		log(i, y(i))
	n = input(11)
	w = ('FastestFinger', 'Ashishgup')
	if n == 1:
		out(w[0])
	elif n == 2:
		out(w[1])
	elif n == 4:
		out(w[0])
	elif n % 2:
		out(w[1])
	elif y(n) and (y(n) > 1 or not n % 4):
		out(w[1])
	else:
		out(w[0])
	return
for i in range(input(11)):
	solve()


def two_odd_factors(n):
	a = 0
	for i in [3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131, 137, 139, 149, 151, 157, 163, 167, 173, 179, 181, 191, 193, 197, 199, 211, 223, 227, 229, 233, 239, 241, 251, 257, 263, 269, 271, 277, 281, 283, 293, 307, 311, 313, 317, 331, 337, 347, 349, 353, 359, 367, 373, 379, 383, 389, 397, 401, 409, 419, 421, 431, 433, 439, 443, 449, 457, 461, 463, 467, 479, 487, 491, 499, 503, 509, 521, 523, 541, 547, 557, 563, 569, 571, 577, 587, 593, 599, 601, 607, 613, 617, 619, 631, 641, 643, 647, 653, 659, 661, 673, 677, 683, 691, 701, 709, 719, 727, 733, 739, 743, 751, 757, 761, 769, 773, 787, 797, 809, 811, 821, 823, 827, 829, 839, 853, 857, 859, 863, 877, 881, 883, 887, 907, 911, 919, 929, 937, 941, 947, 953, 967, 971, 977, 983, 991, 997, 1009, 1013, 1019, 1021, 1031, 1033, 1039, 1049, 1051, 1061, 1063, 1069, 1087, 1091, 1093, 1097, 1103, 1109, 1117, 1123, 1129, 1151, 1153, 1163, 1171, 1181, 1187, 1193, 1201, 1213, 1217, 1223, 1229, 1231, 1237, 1249, 1259, 1277, 1279, 1283, 1289, 1291, 1297, 1301, 1303, 1307, 1319, 1321, 1327, 1361, 1367, 1373, 1381, 1399, 1409, 1423, 1427, 1429, 1433, 1439, 1447, 1451, 1453, 1459, 1471, 1481, 1483, 1487, 1489, 1493, 1499, 1511, 1523, 1531, 1543, 1549, 1553, 1559, 1567, 1571, 1579, 1583, 1597, 1601, 1607, 1609, 1613, 1619, 1621, 1627, 1637, 1657, 1663, 1667, 1669, 1693, 1697, 1699, 1709, 1721, 1723, 1733, 1741, 1747, 1753, 1759, 1777, 1783, 1787, 1789, 1801, 1811, 1823, 1831, 1847, 1861, 1867, 1871, 1873, 1877, 1879, 1889, 1901, 1907, 1913, 1931, 1933, 1949, 1951, 1973, 1979, 1987, 1993, 1997, 1999, 2003, 2011, 2017, 2027, 2029, 2039, 2053, 2063, 2069, 2081, 2083, 2087, 2089, 2099, 2111, 2113, 2129, 2131, 2137, 2141, 2143, 2153, 2161, 2179, 2203, 2207, 2213, 2221, 2237, 2239, 2243, 2251, 2267, 2269, 2273, 2281, 2287, 2293, 2297, 2309, 2311, 2333, 2339, 2341, 2347, 2351, 2357, 2371, 2377, 2381, 2383, 2389, 2393, 2399, 2411, 2417, 2423, 2437, 2441, 2447, 2459, 2467, 2473, 2477, 2503, 2521, 2531, 2539, 2543, 2549, 2551, 2557, 2579, 2591, 2593, 2609, 2617, 2621, 2633, 2647, 2657, 2659, 2663, 2671, 2677, 2683, 2687, 2689, 2693, 2699, 2707, 2711, 2713, 2719, 2729, 2731, 2741, 2749, 2753, 2767, 2777, 2789, 2791, 2797, 2801, 2803, 2819, 2833, 2837, 2843, 2851, 2857, 2861, 2879, 2887, 2897, 2903, 2909, 2917, 2927, 2939, 2953, 2957, 2963, 2969, 2971, 2999, 3001, 3011, 3019, 3023, 3037, 3041, 3049, 3061, 3067, 3079, 3083, 3089, 3109, 3119, 3121, 3137, 3163, 3167, 3169, 3181, 3187, 3191, 3203, 3209, 3217, 3221, 3229, 3251, 3253, 3257, 3259, 3271, 3299, 3301, 3307, 3313, 3319, 3323, 3329, 3331, 3343, 3347, 3359, 3361, 3371, 3373, 3389, 3391, 3407, 3413, 3433, 3449, 3457, 3461, 3463, 3467, 3469, 3491, 3499, 3511, 3517, 3527, 3529, 3533, 3539, 3541, 3547, 3557, 3559, 3571, 3581, 3583, 3593, 3607, 3613, 3617, 3623, 3631, 3637, 3643, 3659, 3671, 3673, 3677, 3691, 3697, 3701, 3709, 3719, 3727, 3733, 3739, 3761, 3767, 3769, 3779, 3793, 3797, 3803, 3821, 3823, 3833, 3847, 3851, 3853, 3863, 3877, 3881, 3889, 3907, 3911, 3917, 3919, 3923, 3929, 3931, 3943, 3947, 3967, 3989, 4001, 4003, 4007, 4013, 4019, 4021, 4027, 4049, 4051, 4057, 4073, 4079, 4091, 4093, 4099, 4111, 4127, 4129, 4133, 4139, 4153, 4157, 4159, 4177, 4201, 4211, 4217, 4219, 4229, 4231, 4241, 4243, 4253, 4259, 4261, 4271, 4273, 4283, 4289, 4297, 4327, 4337, 4339, 4349, 4357, 4363, 4373, 4391, 4397, 4409, 4421, 4423, 4441, 4447, 4451, 4457, 4463, 4481, 4483, 4493, 4507, 4513, 4517, 4519, 4523, 4547, 4549, 4561, 4567, 4583, 4591, 4597, 4603, 4621, 4637, 4639, 4643, 4649, 4651, 4657, 4663, 4673, 4679, 4691, 4703, 4721, 4723, 4729, 4733, 4751, 4759, 4783, 4787, 4789, 4793, 4799, 4801, 4813, 4817, 4831, 4861, 4871, 4877, 4889, 4903, 4909, 4919, 4931, 4933, 4937, 4943, 4951, 4957, 4967, 4969, 4973, 4987, 4993, 4999, 5003, 5009, 5011, 5021, 5023, 5039, 5051, 5059, 5077, 5081, 5087, 5099, 5101, 5107, 5113, 5119, 5147, 5153, 5167, 5171, 5179, 5189, 5197, 5209, 5227, 5231, 5233, 5237, 5261, 5273, 5279, 5281, 5297, 5303, 5309, 5323, 5333, 5347, 5351, 5381, 5387, 5393, 5399, 5407, 5413, 5417, 5419, 5431, 5437, 5441, 5443, 5449, 5471, 5477, 5479, 5483, 5501, 5503, 5507, 5519, 5521, 5527, 5531, 5557, 5563, 5569, 5573, 5581, 5591, 5623, 5639, 5641, 5647, 5651, 5653, 5657, 5659, 5669, 5683, 5689, 5693, 5701, 5711, 5717, 5737, 5741, 5743, 5749, 5779, 5783, 5791, 5801, 5807, 5813, 5821, 5827, 5839, 5843, 5849, 5851, 5857, 5861, 5867, 5869, 5879, 5881, 5897, 5903, 5923, 5927, 5939, 5953, 5981, 5987, 6007, 6011, 6029, 6037, 6043, 6047, 6053, 6067, 6073, 6079, 6089, 6091, 6101, 6113, 6121, 6131, 6133, 6143, 6151, 6163, 6173, 6197, 6199, 6203, 6211, 6217, 6221, 6229, 6247, 6257, 6263, 6269, 6271, 6277, 6287, 6299, 6301, 6311, 6317, 6323, 6329, 6337, 6343, 6353, 6359, 6361, 6367, 6373, 6379, 6389, 6397, 6421, 6427, 6449, 6451, 6469, 6473, 6481, 6491, 6521, 6529, 6547, 6551, 6553, 6563, 6569, 6571, 6577, 6581, 6599, 6607, 6619, 6637, 6653, 6659, 6661, 6673, 6679, 6689, 6691, 6701, 6703, 6709, 6719, 6733, 6737, 6761, 6763, 6779, 6781, 6791, 6793, 6803, 6823, 6827, 6829, 6833, 6841, 6857, 6863, 6869, 6871, 6883, 6899, 6907, 6911, 6917, 6947, 6949, 6959, 6961, 6967, 6971, 6977, 6983, 6991, 6997, 7001, 7013, 7019, 7027, 7039, 7043, 7057, 7069, 7079, 7103, 7109, 7121, 7127, 7129, 7151, 7159, 7177, 7187, 7193, 7207, 7211, 7213, 7219, 7229, 7237, 7243, 7247, 7253, 7283, 7297, 7307, 7309, 7321, 7331, 7333, 7349, 7351, 7369, 7393, 7411, 7417, 7433, 7451, 7457, 7459, 7477, 7481, 7487, 7489, 7499, 7507, 7517, 7523, 7529, 7537, 7541, 7547, 7549, 7559, 7561, 7573, 7577, 7583, 7589, 7591, 7603, 7607, 7621, 7639, 7643, 7649, 7669, 7673, 7681, 7687, 7691, 7699, 7703, 7717, 7723, 7727, 7741, 7753, 7757, 7759, 7789, 7793, 7817, 7823, 7829, 7841, 7853, 7867, 7873, 7877, 7879, 7883, 7901, 7907, 7919, 7927, 7933, 7937, 7949, 7951, 7963, 7993, 8009, 8011, 8017, 8039, 8053, 8059, 8069, 8081, 8087, 8089, 8093, 8101, 8111, 8117, 8123, 8147, 8161, 8167, 8171, 8179, 8191, 8209, 8219, 8221, 8231, 8233, 8237, 8243, 8263, 8269, 8273, 8287, 8291, 8293, 8297, 8311, 8317, 8329, 8353, 8363, 8369, 8377, 8387, 8389, 8419, 8423, 8429, 8431, 8443, 8447, 8461, 8467, 8501, 8513, 8521, 8527, 8537, 8539, 8543, 8563, 8573, 8581, 8597, 8599, 8609, 8623, 8627, 8629, 8641, 8647, 8663, 8669, 8677, 8681, 8689, 8693, 8699, 8707, 8713, 8719, 8731, 8737, 8741, 8747, 8753, 8761, 8779, 8783, 8803, 8807, 8819, 8821, 8831, 8837, 8839, 8849, 8861, 8863, 8867, 8887, 8893, 8923, 8929, 8933, 8941, 8951, 8963, 8969, 8971, 8999, 9001, 9007, 9011, 9013, 9029, 9041, 9043, 9049, 9059, 9067, 9091, 9103, 9109, 9127, 9133, 9137, 9151, 9157, 9161, 9173, 9181, 9187, 9199, 9203, 9209, 9221, 9227, 9239, 9241, 9257, 9277, 9281, 9283, 9293, 9311, 9319, 9323, 9337, 9341, 9343, 9349, 9371, 9377, 9391, 9397, 9403, 9413, 9419, 9421, 9431, 9433, 9437, 9439, 9461, 9463, 9467, 9473, 9479, 9491, 9497, 9511, 9521, 9533, 9539, 9547, 9551, 9587, 9601, 9613, 9619, 9623, 9629, 9631, 9643, 9649, 9661, 9677, 9679, 9689, 9697, 9719, 9721, 9733, 9739, 9743, 9749, 9767, 9769, 9781, 9787, 9791, 9803, 9811, 9817, 9829, 9833, 9839, 9851, 9857, 9859, 9871, 9883, 9887, 9901, 9907, 9923, 9929, 9931, 9941, 9949, 9967, 9973, 10007, 10009, 10037, 10039, 10061, 10067, 10069, 10079, 10091, 10093, 10099, 10103, 10111, 10133, 10139, 10141, 10151, 10159, 10163, 10169, 10177, 10181, 10193, 10211, 10223, 10243, 10247, 10253, 10259, 10267, 10271, 10273, 10289, 10301, 10303, 10313, 10321, 10331, 10333, 10337, 10343, 10357, 10369, 10391, 10399, 10427, 10429, 10433, 10453, 10457, 10459, 10463, 10477, 10487, 10499, 10501, 10513, 10529, 10531, 10559, 10567, 10589, 10597, 10601, 10607, 10613, 10627, 10631, 10639, 10651, 10657, 10663, 10667, 10687, 10691, 10709, 10711, 10723, 10729, 10733, 10739, 10753, 10771, 10781, 10789, 10799, 10831, 10837, 10847, 10853, 10859, 10861, 10867, 10883, 10889, 10891, 10903, 10909, 10937, 10939, 10949, 10957, 10973, 10979, 10987, 10993, 11003, 11027, 11047, 11057, 11059, 11069, 11071, 11083, 11087, 11093, 11113, 11117, 11119, 11131, 11149, 11159, 11161, 11171, 11173, 11177, 11197, 11213, 11239, 11243, 11251, 11257, 11261, 11273, 11279, 11287, 11299, 11311, 11317, 11321, 11329, 11351, 11353, 11369, 11383, 11393, 11399, 11411, 11423, 11437, 11443, 11447, 11467, 11471, 11483, 11489, 11491, 11497, 11503, 11519, 11527, 11549, 11551, 11579, 11587, 11593, 11597, 11617, 11621, 11633, 11657, 11677, 11681, 11689, 11699, 11701, 11717, 11719, 11731, 11743, 11777, 11779, 11783, 11789, 11801, 11807, 11813, 11821, 11827, 11831, 11833, 11839, 11863, 11867, 11887, 11897, 11903, 11909, 11923, 11927, 11933, 11939, 11941, 11953, 11959, 11969, 11971, 11981, 11987, 12007, 12011, 12037, 12041, 12043, 12049, 12071, 12073, 12097, 12101, 12107, 12109, 12113, 12119, 12143, 12149, 12157, 12161, 12163, 12197, 12203, 12211, 12227, 12239, 12241, 12251, 12253, 12263, 12269, 12277, 12281, 12289, 12301, 12323, 12329, 12343, 12347, 12373, 12377, 12379, 12391, 12401, 12409, 12413, 12421, 12433, 12437, 12451, 12457, 12473, 12479, 12487, 12491, 12497, 12503, 12511, 12517, 12527, 12539, 12541, 12547, 12553, 12569, 12577, 12583, 12589, 12601, 12611, 12613, 12619, 12637, 12641, 12647, 12653, 12659, 12671, 12689, 12697, 12703, 12713, 12721, 12739, 12743, 12757, 12763, 12781, 12791, 12799, 12809, 12821, 12823, 12829, 12841, 12853, 12889, 12893, 12899, 12907, 12911, 12917, 12919, 12923, 12941, 12953, 12959, 12967, 12973, 12979, 12983, 13001, 13003, 13007, 13009, 13033, 13037, 13043, 13049, 13063, 13093, 13099, 13103, 13109, 13121, 13127, 13147, 13151, 13159, 13163, 13171, 13177, 13183, 13187, 13217, 13219, 13229, 13241, 13249, 13259, 13267, 13291, 13297, 13309, 13313, 13327, 13331, 13337, 13339, 13367, 13381, 13397, 13399, 13411, 13417, 13421, 13441, 13451, 13457, 13463, 13469, 13477, 13487, 13499, 13513, 13523, 13537, 13553, 13567, 13577, 13591, 13597, 13613, 13619, 13627, 13633, 13649, 13669, 13679, 13681, 13687, 13691, 13693, 13697, 13709, 13711, 13721, 13723, 13729, 13751, 13757, 13759, 13763, 13781, 13789, 13799, 13807, 13829, 13831, 13841, 13859, 13873, 13877, 13879, 13883, 13901, 13903, 13907, 13913, 13921, 13931, 13933, 13963, 13967, 13997, 13999, 14009, 14011, 14029, 14033, 14051, 14057, 14071, 14081, 14083, 14087, 14107, 14143, 14149, 14153, 14159, 14173, 14177, 14197, 14207, 14221, 14243, 14249, 14251, 14281, 14293, 14303, 14321, 14323, 14327, 14341, 14347, 14369, 14387, 14389, 14401, 14407, 14411, 14419, 14423, 14431, 14437, 14447, 14449, 14461, 14479, 14489, 14503, 14519, 14533, 14537, 14543, 14549, 14551, 14557, 14561, 14563, 14591, 14593, 14621, 14627, 14629, 14633, 14639, 14653, 14657, 14669, 14683, 14699, 14713, 14717, 14723, 14731, 14737, 14741, 14747, 14753, 14759, 14767, 14771, 14779, 14783, 14797, 14813, 14821, 14827, 14831, 14843, 14851, 14867, 14869, 14879, 14887, 14891, 14897, 14923, 14929, 14939, 14947, 14951, 14957, 14969, 14983, 15013, 15017, 15031, 15053, 15061, 15073, 15077, 15083, 15091, 15101, 15107, 15121, 15131, 15137, 15139, 15149, 15161, 15173, 15187, 15193, 15199, 15217, 15227, 15233, 15241, 15259, 15263, 15269, 15271, 15277, 15287, 15289, 15299, 15307, 15313, 15319, 15329, 15331, 15349, 15359, 15361, 15373, 15377, 15383, 15391, 15401, 15413, 15427, 15439, 15443, 15451, 15461, 15467, 15473, 15493, 15497, 15511, 15527, 15541, 15551, 15559, 15569, 15581, 15583, 15601, 15607, 15619, 15629, 15641, 15643, 15647, 15649, 15661, 15667, 15671, 15679, 15683, 15727, 15731, 15733, 15737, 15739, 15749, 15761, 15767, 15773, 15787, 15791, 15797, 15803, 15809, 15817, 15823, 15859, 15877, 15881, 15887, 15889, 15901, 15907, 15913, 15919, 15923, 15937, 15959, 15971, 15973, 15991, 16001, 16007, 16033, 16057, 16061, 16063, 16067, 16069, 16073, 16087, 16091, 16097, 16103, 16111, 16127, 16139, 16141, 16183, 16187, 16189, 16193, 16217, 16223, 16229, 16231, 16249, 16253, 16267, 16273, 16301, 16319, 16333, 16339, 16349, 16361, 16363, 16369, 16381, 16411, 16417, 16421, 16427, 16433, 16447, 16451, 16453, 16477, 16481, 16487, 16493, 16519, 16529, 16547, 16553, 16561, 16567, 16573, 16603, 16607, 16619, 16631, 16633, 16649, 16651, 16657, 16661, 16673, 16691, 16693, 16699, 16703, 16729, 16741, 16747, 16759, 16763, 16787, 16811, 16823, 16829, 16831, 16843, 16871, 16879, 16883, 16889, 16901, 16903, 16921, 16927, 16931, 16937, 16943, 16963, 16979, 16981, 16987, 16993, 17011, 17021, 17027, 17029, 17033, 17041, 17047, 17053, 17077, 17093, 17099, 17107, 17117, 17123, 17137, 17159, 17167, 17183, 17189, 17191, 17203, 17207, 17209, 17231, 17239, 17257, 17291, 17293, 17299, 17317, 17321, 17327, 17333, 17341, 17351, 17359, 17377, 17383, 17387, 17389, 17393, 17401, 17417, 17419, 17431, 17443, 17449, 17467, 17471, 17477, 17483, 17489, 17491, 17497, 17509, 17519, 17539, 17551, 17569, 17573, 17579, 17581, 17597, 17599, 17609, 17623, 17627, 17657, 17659, 17669, 17681, 17683, 17707, 17713, 17729, 17737, 17747, 17749, 17761, 17783, 17789, 17791, 17807, 17827, 17837, 17839, 17851, 17863, 17881, 17891, 17903, 17909, 17911, 17921, 17923, 17929, 17939, 17957, 17959, 17971, 17977, 17981, 17987, 17989, 18013, 18041, 18043, 18047, 18049, 18059, 18061, 18077, 18089, 18097, 18119, 18121, 18127, 18131, 18133, 18143, 18149, 18169, 18181, 18191, 18199, 18211, 18217, 18223, 18229, 18233, 18251, 18253, 18257, 18269, 18287, 18289, 18301, 18307, 18311, 18313, 18329, 18341, 18353, 18367, 18371, 18379, 18397, 18401, 18413, 18427, 18433, 18439, 18443, 18451, 18457, 18461, 18481, 18493, 18503, 18517, 18521, 18523, 18539, 18541, 18553, 18583, 18587, 18593, 18617, 18637, 18661, 18671, 18679, 18691, 18701, 18713, 18719, 18731, 18743, 18749, 18757, 18773, 18787, 18793, 18797, 18803, 18839, 18859, 18869, 18899, 18911, 18913, 18917, 18919, 18947, 18959, 18973, 18979, 19001, 19009, 19013, 19031, 19037, 19051, 19069, 19073, 19079, 19081, 19087, 19121, 19139, 19141, 19157, 19163, 19181, 19183, 19207, 19211, 19213, 19219, 19231, 19237, 19249, 19259, 19267, 19273, 19289, 19301, 19309, 19319, 19333, 19373, 19379, 19381, 19387, 19391, 19403, 19417, 19421, 19423, 19427, 19429, 19433, 19441, 19447, 19457, 19463, 19469, 19471, 19477, 19483, 19489, 19501, 19507, 19531, 19541, 19543, 19553, 19559, 19571, 19577, 19583, 19597, 19603, 19609, 19661, 19681, 19687, 19697, 19699, 19709, 19717, 19727, 19739, 19751, 19753, 19759, 19763, 19777, 19793, 19801, 19813, 19819, 19841, 19843, 19853, 19861, 19867, 19889, 19891, 19913, 19919, 19927, 19937, 19949, 19961, 19963, 19973, 19979, 19991, 19993, 19997, 20011, 20021, 20023, 20029, 20047, 20051, 20063, 20071, 20089, 20101, 20107, 20113, 20117, 20123, 20129, 20143, 20147, 20149, 20161, 20173, 20177, 20183, 20201, 20219, 20231, 20233, 20249, 20261, 20269, 20287, 20297, 20323, 20327, 20333, 20341, 20347, 20353, 20357, 20359, 20369, 20389, 20393, 20399, 20407, 20411, 20431, 20441, 20443, 20477, 20479, 20483, 20507, 20509, 20521, 20533, 20543, 20549, 20551, 20563, 20593, 20599, 20611, 20627, 20639, 20641, 20663, 20681, 20693, 20707, 20717, 20719, 20731, 20743, 20747, 20749, 20753, 20759, 20771, 20773, 20789, 20807, 20809, 20849, 20857, 20873, 20879, 20887, 20897, 20899, 20903, 20921, 20929, 20939, 20947, 20959, 20963, 20981, 20983, 21001, 21011, 21013, 21017, 21019, 21023, 21031, 21059, 21061, 21067, 21089, 21101, 21107, 21121, 21139, 21143, 21149, 21157, 21163, 21169, 21179, 21187, 21191, 21193, 21211, 21221, 21227, 21247, 21269, 21277, 21283, 21313, 21317, 21319, 21323, 21341, 21347, 21377, 21379, 21383, 21391, 21397, 21401, 21407, 21419, 21433, 21467, 21481, 21487, 21491, 21493, 21499, 21503, 21517, 21521, 21523, 21529, 21557, 21559, 21563, 21569, 21577, 21587, 21589, 21599, 21601, 21611, 21613, 21617, 21647, 21649, 21661, 21673, 21683, 21701, 21713, 21727, 21737, 21739, 21751, 21757, 21767, 21773, 21787, 21799, 21803, 21817, 21821, 21839, 21841, 21851, 21859, 21863, 21871, 21881, 21893, 21911, 21929, 21937, 21943, 21961, 21977, 21991, 21997, 22003, 22013, 22027, 22031, 22037, 22039, 22051, 22063, 22067, 22073, 22079, 22091, 22093, 22109, 22111, 22123, 22129, 22133, 22147, 22153, 22157, 22159, 22171, 22189, 22193, 22229, 22247, 22259, 22271, 22273, 22277, 22279, 22283, 22291, 22303, 22307, 22343, 22349]:
		if n <= 1 or a > 0:
			break
		while not n % i:
			n //= i
			a += 1
	if n > 1:
		a += 1
	return a

def move(a, n):
	if n == 1:
		return a + 1
	elif n % 2 or n == 2:
		return a
	elif n.bit_length() == bin(n).count('0'):
		return a + 1
	elif not n % 4:
		return a
	elif two_odd_factors(n // 2) > 1:
		return a
	else:
		return a + 1
players = ['Ashishgup', 'FastestFinger']
player1 = 0
for _ in range(int(input())):
	n = int(input())
	win = move(player1, n)
	print(f'{players[win % 2]}')


from math import log2
import math

def primeFactors(n):
	while n % 2 == 0:
		re.append(2)
		n = n / 2
	for i in range(3, int(math.sqrt(n)) + 1, 2):
		while n % i == 0:
			re.append(i)
			n = n / i
	if n > 2:
		re.append(n)
for _ in range(int(input())):
	n = int(input())
	p = 0
	while (n / 2).is_integer():
		p += 1
		n /= 2
	re = []
	primeFactors(n)
	if len(re) == 0 and p == 0:
		print('FastestFinger')
	elif len(re) == 0 and p != 0:
		if p == 1:
			print('Ashishgup')
		else:
			print('FastestFinger')
	elif len(re) != 0 and p == 0:
		print('Ashishgup')
	elif len(re) == 1 and p == 1:
		print('FastestFinger')
	else:
		print('Ashishgup')


import math

def divisors(n):
	while n % 2 == 0:
		n = n // 2
	return n

def fun(n):
	for i in range(3, int(math.sqrt(n) + 1), 2):
		if n % i == 0:
			return i
	return -1
for i in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	if n % 2 != 0 or n == 2:
		print('Ashishgup')
		continue
	if n % 2 == 0 and n % 4 == 0:
		temp = divisors(n)
		if temp == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')
	else:
		t = fun(n // 2)
		if t == -1:
			print('FastestFinger')
		else:
			print('Ashishgup')


R1 = lambda : list(map(int, input().split()))
R2 = lambda : int(input())
o = ['FastestFinger', 'Ashishgup']
for _ in range(R2()):
	n = R2()
	t = 0
	if n == 1:
		t = 0
	elif n % 2 == 1 or n == 2:
		t = 1
	else:
		for i in range(3, int(n ** 0.5) + 1):
			if n % i == 0:
				if i % 2 == 1 or n // i % 2 == 1:
					t = 1
					break
	print(o[t % 2])


from math import log

class Solution:

	def __init__(self):
		self.n = int(input())

	def solve_and_print(self):
		n = self.n
		if n == 1:
			print('FastestFinger')
		elif n == 2:
			print('Ashishgup')
		elif n % 2 == 1:
			print('Ashishgup')
		elif log(n, 2) - int(log(n, 2)) == 0:
			print('FastestFinger')
		elif n // 2 % 2 == 0:
			print('Ashishgup')
		else:
			temp = n // 2
			if self.isPrime(temp):
				print('FastestFinger')
			else:
				print('Ashishgup')

	def isPrime(self, n):
		if n <= 1:
			return False
		if n <= 3:
			return True
		if n % 2 == 0 or n % 3 == 0:
			return False
		for i in range(5, int(n ** 0.5) + 1, 6):
			if n % i == 0 or n % (i + 2) == 0:
				return False
		return True
for _ in range(int(input())):
	Solution().solve_and_print()


t = int(input())
for _ in range(t):
	n = int(input())
	if n == 2:
		print('Ashishgup')
		continue
	if n == 1:
		print('FastestFinger')
		continue
	elif n & 1:
		print('Ashishgup')
		continue
	elif n % 2 == 0:
		if n // 2 % 2 == 1:
			k = n // 2
			flag = 0
			for i in range(2, int(pow(k, 0.5)) + 1):
				if k % i == 0:
					flag = 1
					break
			if flag == 0:
				print('FastestFinger')
				continue
			else:
				print('Ashishgup')
				continue
		while not n & 1:
			n = n >> 1
		if n == 1:
			print('FastestFinger')
			continue
		else:
			print('Ashishgup')
			continue


for s in [*open(0)][1:]:
	n = int(s)
	print(('FastestFinger', 'Ashishgup')[n > 1 and (n < 3 or n % 2 or any(((n % i < 1) & (i | n // i) for i in range(3, int(n ** 0.5) + 1))))])


from math import *
t = int(input())
for _ in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 != 0:
		print('Ashishgup')
	else:
		c = 0
		while n % 2 == 0:
			n = n // 2
			c = c + 1
		if n == 1:
			if c > 1:
				f = 1
			else:
				f = 0
		elif c == 1:
			r = sqrt(n)
			r = floor(r)
			r = r + 1
			for i in range(2, r + 1):
				if n % i == 0:
					f = 0
					break
			else:
				f = 1
		else:
			f = 0
		if f == 0:
			print('Ashishgup')
		else:
			print('FastestFinger')


import math
import sys
sys.setrecursionlimit(10 ** 4)

def Divisors(n):
	l = []
	i = 2
	while i <= math.sqrt(n):
		if n % i == 0:
			if n // i == i:
				l.append(i)
			else:
				l.append(i)
				l.append(n // i)
		i = i + 1
	return l

def SieveOfEratosthenes(n):
	l = []
	prime = [True for i in range(n + 1)]
	p = 2
	while p * p <= n:
		if prime[p] == True:
			for i in range(p * p, n + 1, p):
				prime[i] = False
		p += 1
	for p in range(2, n + 1):
		if prime[p]:
			l.append(p)
	return l

def primeFactors(n):
	l = []
	while n % 2 == 0:
		l.append(2)
		n = n / 2
	for i in range(3, int(math.sqrt(n)) + 1, 2):
		while n % i == 0:
			l.append(i)
			n = n / i
	if n > 2:
		l.append(n)
	return l

def Factors(n):
	result = []
	for i in range(2, int(math.sqrt(n)) + 1):
		if n % i == 0:
			if i == n / i:
				result.append(i)
			else:
				result.append(i)
				result.append(n // i)
	result.append(1)
	result.append(n)
	return result

def maxSubArraySum(a):
	max_so_far = 0
	max_ending_here = 0
	size = len(a)
	for i in range(0, size):
		max_ending_here = max_ending_here + a[i]
		if max_so_far < max_ending_here:
			max_so_far = max_ending_here
		if max_ending_here < 0:
			max_ending_here = 0
	return max_so_far

def longestsubarray(arr, n, k):
	current_count = 0
	max_count = 0
	for i in range(0, n, 1):
		if arr[i] % k != 0:
			current_count += 1
		else:
			current_count = 0
		max_count = max(current_count, max_count)
	return max_count

def main():
	n = int(input())
	a = 'Ashishgup'
	b = 'FastestFinger'
	f = 1
	if n == 1:
		print('FastestFinger')
		return
	if n == 2 or n % 2 == 1:
		print('Ashishgup')
		return
	else:
		l = Divisors(n)
		if len(l) == 0:
			print(b)
		else:
			m = 10 ** 9
			for j in l:
				if j % 2 != 0 and j < m:
					m = j
			if m == 10 ** 9:
				print(b)
			elif n // m > 2 and n // m % 2 != 1:
				print(a)
			else:
				print(b)
t = int(input())
for i in range(0, t):
	main()


maxN = 40000
prime = []
check = [0 for i in range(maxN)]
for i in range(2, maxN):
	if check[i] == 0:
		if i != 2:
			prime.append(i)
		for j in range(i * i, maxN, i):
			check[j] = 1
t = int(input())
for _ in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	if n == 2:
		print('Ashishgup')
		continue
	if n % 2 != 0:
		print('Ashishgup')
		continue
	c = 0
	tmp = 1
	while n % 2 == 0:
		n //= 2
		tmp *= 2
	for i in prime:
		if i > n:
			break
		if n % i == 0:
			while n % i == 0:
				c += 1
				n //= i
	if n != 1:
		c += 1
	if c == 0:
		print('FastestFinger')
		continue
	if tmp == 2:
		if c == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')
	else:
		print('Ashishgup')


import math

def game(n):
	if n % 2 != 0:
		if n == 1:
			return 'FastestFinger'
		else:
			return 'Ashishgup'
	else:
		x = math.log(n, 2)
		if x == int(x):
			if x == 1:
				return 'Ashishgup'
			else:
				return 'FastestFinger'
		else:
			L = []
			temp = n
			while n % 2 == 0:
				n = n // 2
			for i in range(1, int(n ** 0.5) + 1):
				if n % i == 0:
					L.append(i)
					if i * i != n:
						L.append(n // i)
			y = temp // n
			z = math.log(y, 2)
			t = len(L)
			if z != 1:
				return 'Ashishgup'
			elif t > 2:
				return 'Ashishgup'
			else:
				return 'FastestFinger'
t = int(input())
for i in range(0, t):
	n = int(input())
	c = game(n)
	print(c)


import math

def P(n):
	if n <= 1:
		return False
	if n <= 3:
		return True
	if n % 2 == 0 or n % 3 == 0:
		return False
	i = 5
	while i * i <= n:
		if n % i == 0 or n % (i + 2) == 0:
			return False
		i = i + 6
	return True

def shrey():
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 != 0 or n == 2:
		print('Ashishgup')
	else:
		a = math.log10(n) / math.log10(2)
		b = math.ceil(a)
		c = math.floor(a)
		if b == c:
			print('FastestFinger')
		elif P(n // 2):
			print('FastestFinger')
		else:
			print('Ashishgup')
T = input()
T = int(T)
for q in range(1, T + 1):
	shrey()


def isPrime(n):
	if n <= 1:
		return False
	if n <= 3:
		return True
	if n % 2 == 0 or n % 3 == 0:
		return False
	i = 5
	while i * i <= n:
		if n % i == 0 or n % (i + 2) == 0:
			return False
		i = i + 6
	return True
b = 'FastestFinger'
a = 'Ashishgup'
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print(b)
	elif n == 2:
		print(a)
	elif n % 2 == 1:
		print(a)
	else:
		c = 0
		t = n
		while n % 2 == 0:
			n = n // 2
			c += 1
		if n == 1:
			print(b)
		elif t // n == 2:
			if isPrime(n):
				print(b)
			else:
				print(a)
		else:
			print(a)


import math
from collections import defaultdict

def primeFactors(n):
	d = defaultdict(int)
	while n % 2 == 0:
		d[2] += 1
		n = n // 2
	for i in range(3, int(math.sqrt(n)) + 1, 2):
		while n % i == 0:
			d[i] += 1
			n = n // i
	if n > 2:
		d[n] += 1
	return d
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 != 0:
		print('Ashishgup')
	else:
		dic = primeFactors(n)
		p = dic[2]
		q = len(dic.keys()) - 1
		r = 0
		for i in dic:
			if i != 2:
				r += dic[i]
		if p > 1 and q == 0:
			print('FastestFinger')
		elif p > 1 and q > 0:
			print('Ashishgup')
		elif p == 1 and q > 1:
			print('Ashishgup')
		elif p == 1 and q == 1 and (r > 1):
			print('Ashishgup')
		else:
			print('FastestFinger')


import math

def primeFactors(n):
	r = []
	while n % 2 == 0:
		r.append(2)
		n = n // 2
	for i in range(3, int(math.sqrt(n)) + 1, 2):
		while n % i == 0:
			r.append(int(i))
			n = n // i
	if n > 2:
		r.append(n)
	return r
for _ in range(0, int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 != 0:
		print('Ashishgup')
	else:
		p = primeFactors(n)
		twos = p.count(2)
		not_twos = len(p) - twos
		if twos == len(p):
			print('FastestFinger')
		elif twos == 1:
			if not_twos == 1:
				print('FastestFinger')
			else:
				print('Ashishgup')
		else:
			print('Ashishgup')


from sys import stdin, stdout
import math, queue, heapq
fastinput = stdin.readline
fastout = stdout.write

def isPrime(n):
	if n <= 1:
		return False
	if n <= 3:
		return True
	if n % 2 == 0 or n % 3 == 0:
		return False
	i = 5
	while i * i <= n:
		if n % i == 0 or n % (i + 2) == 0:
			return False
		i = i + 6
	return True
t = int(fastinput())
while t:
	t -= 1
	n = int(fastinput())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 != 0:
		print('Ashishgup')
	else:
		count = 0
		while n % 2 == 0:
			n //= 2
			count += 1
		if count > 1 and n > 1:
			print('Ashishgup')
		elif n == 1:
			print('FastestFinger')
		elif count == 1 and isPrime(n):
			print('FastestFinger')
		else:
			print('Ashishgup')


def isPowerOfTwo(c):
	return c & c - 1 == 0

def isPrime(x):
	i = 2
	while i * i <= x:
		if x % i == 0:
			return False
		i += 1
	return True
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		res = 'FastestFinger'
	elif n == 2:
		res = 'Ashishgup'
	elif n & 1 == 1:
		res = 'Ashishgup'
	elif isPowerOfTwo(n):
		res = 'FastestFinger'
	elif isPrime(n / 2):
		res = 'FastestFinger'
	else:
		res = 'Ashishgup'
	print(res)


t = int(input())
ans = [0] * t

def prime_factorize(n):
	a = []
	while n % 2 == 0:
		a.append(2)
		n //= 2
	f = 3
	while f * f <= n:
		if n % f == 0:
			a.append(f)
			n //= f
		else:
			f += 2
	if n != 1:
		a.append(n)
	return a
for i in range(t):
	n = int(input())
	cnt = 0
	while True:
		if n % 2 == 1:
			break
		else:
			n //= 2
			cnt += 1
	if n == 1:
		if cnt == 0:
			ans[i] = 'FastestFinger'
		elif cnt == 1:
			ans[i] = 'Ashishgup'
		else:
			ans[i] = 'FastestFinger'
	elif cnt == 0:
		ans[i] = 'Ashishgup'
	elif cnt == 1:
		x = len(prime_factorize(n))
		if x == 1:
			ans[i] = 'FastestFinger'
		else:
			ans[i] = 'Ashishgup'
	else:
		ans[i] = 'Ashishgup'
for i in range(t):
	print(ans[i])


def prime(n):
	for i in range(2, int(n ** 0.5) + 1):
		if n % i == 0:
			return False
	return True

def game(n, turn):
	if n == 2:
		return turn
	if n == 1:
		return not turn
	if n % 2 == 1:
		return turn
	else:
		k = n
		while k % 2 == 0:
			k = k // 2
		if k == 1:
			return not turn
		if prime(k):
			if n // k == 2:
				return not turn
			else:
				return turn
		else:
			return turn
t = int(input())
while t:
	if game(int(input()), 1):
		print('Ashishgup')
	else:
		print('FastestFinger')
	t = t - 1


for _ in range(int(input())):
	n = int(input())
	m = [n]
	if n % 2 != 0 and n != 1:
		print('Ashishgup')
		continue
	if n % 2 != 0:
		print('FastestFinger')
		continue
	if n == 2:
		print('Ashishgup')
		continue
	c = 0
	while n % 2 == 0:
		n = n // 2
		c += 1
	t = 0
	for i in range(3, int(n ** 0.5) + 1, 2):
		while n % i == 0:
			n = n // i
			t += 1
			if t >= 2:
				break
	if n > 2:
		t += 1
	if c > 1 and t > 0:
		print('Ashishgup')
		continue
	if c > 1 and t == 0:
		print('FastestFinger')
		continue
	if c == 1 and t == 1:
		print('FastestFinger')
		continue
	else:
		print('Ashishgup')


import sys
import math
import heapq
import collections

def inputnum():
	return int(input())

def inputnums():
	return map(int, input().split())

def inputlist():
	return list(map(int, input().split()))

def inputstring():
	return [x for x in input()]

def inputmatrixchar(rows):
	arr2d = [[j for j in input().strip()] for i in range(rows)]
	return arr2d

def inputmatrixint(rows):
	arr2d = []
	for _ in range(rows):
		arr2d.append([int(i) for i in input().split()])
	return arr2d

def isPrime(n):
	if n <= 1:
		return False
	if n <= 3:
		return True
	if n % 2 == 0 or n % 3 == 0:
		return False
	for i in range(5, int(math.sqrt(n) + 1), 6):
		if n % i == 0 or n % (i + 2) == 0:
			return False
	return True
t = int(input())
for q in range(t):
	n = inputnum()
	if n % 2 == 1:
		if n == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')
	elif n // 2 % 2 == 1:
		if isPrime(n // 2):
			print('FastestFinger')
		else:
			print('Ashishgup')
	else:
		while n > 1:
			n /= 2
		if n == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')


test_cases = int(input())
primeNumbers = set()
maxTried = [1]

def is_prime(n):
	if n < maxTried[0]:
		if n in primeNumbers:
			return True
		else:
			return False
	for i in range(3, int(n ** 0.5) + 1, 2):
		if n % i == 0:
			return False
	primeNumbers.add(n)
	return True
for _ in range(test_cases):
	n = int(input())
	output = ['FastestFinger', 'Ashishgup']
	if n == 1:
		print(output[0])
	elif n % 2 == 1:
		print(output[1])
	elif n == 2:
		print(output[1])
	elif n == 4:
		print(output[0])
	elif n % 4 == 0:
		k = n
		while k % 2 == 0:
			k //= 2
		if k == 1:
			print(output[0])
		else:
			print(output[1])
	else:
		k = n // 2
		prime = is_prime(k)
		if prime:
			print(output[0])
		else:
			print(output[1])


import math
for tc in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 == 1 or n == 2:
		print('Ashishgup')
	else:
		N = n
		while N % 2 == 0:
			N //= 2
		oddfacs = N
		p = 1
		for i in range(2, int(N ** 0.5) + 1):
			if N % i == 0:
				p = 0
		if p == 1 and n // oddfacs == 2:
			print('FastestFinger')
		elif oddfacs != 1 and math.log2(n // oddfacs) == int(math.log2(n // oddfacs)):
			print('Ashishgup')
		elif oddfacs == 1 or p == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')


from math import sqrt

def fac(n):
	if n == 1:
		return 0
	for i in range(2, int(sqrt(n)) + 1):
		if n % i == 0:
			return fac(i) + fac(n // i)
	if n % 2 == 1:
		return 1
	else:
		return 0
for _ in range(int(input())):
	ans = ['Ashishgup', 'FastestFinger']
	n = int(input())
	if n == 1:
		print(ans[1])
	elif n == 2:
		print(ans[0])
	elif n % 2 == 1:
		print(ans[0])
	elif fac(n) == 0:
		print(ans[1])
	elif n % 4 == 0:
		print(ans[0])
	elif fac(n) > 1:
		print(ans[0])
	else:
		print(ans[1])


import sys
input = sys.stdin.readline
import math

def prime(a):
	if a == 2:
		return True
	elif a == 0:
		return False
	for i in range(2, int(math.sqrt(a)) + 1):
		if a % i == 0:
			return False
	return True
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2 or n % 2 == 1:
		print('Ashishgup')
	else:
		I = 0
		p = 0
		while n % 2 == 0:
			n //= 2
			p += 1
		if n == 1:
			print('FastestFinger')
		elif p >= 2:
			print('Ashishgup')
		elif prime(n):
			print('FastestFinger')
		else:
			print('Ashishgup')


def read_int():
	return int(input())

def read_ints():
	return list(map(int, input().split(' ')))
from functools import lru_cache

@lru_cache(None)
def solve(n):
	if n == 1:
		return False
	if n % 2 == 1 or n == 2:
		return True
	m = 0
	while n % 2 == 0:
		n //= 2
		m += 1
	if m >= 2 and n == 1:
		return False
	idx = 3
	prime = True
	while idx * idx <= n:
		if n % idx == 0:
			prime = False
			break
		idx += 1
	return m >= 2 or not prime
t = read_int()
for case_num in range(t):
	n = read_int()
	print('Ashishgup' if solve(n) else 'FastestFinger')


def solve(n):
	if n == 1:
		return False
	if n % 2 != 0:
		return True
	ans = False
	if n - 1 == 1:
		return True
	l = list()
	i = 2
	while i * i <= n:
		if n % i == 0:
			l.append(i)
			if n // i != i:
				l.append(n // i)
		i += 1
	for i in l:
		if i % 2 != 0:
			if not solve(n // i):
				return True
	return False
t = int(input())
for i in range(t):
	n = int(input())
	f = solve(n)
	if f:
		print('Ashishgup')
	else:
		print('FastestFinger')


t = int(input())

def Prime(n):
	if n & 1 == 0:
		return 2
	d = 3
	while d * d <= n:
		if n % d == 0:
			return d
		d = d + 2
	return 0

def isPowerOfTwo(x):
	return x and (not x & x - 1)

def getWinner(n):
	if n == 1:
		return 'FastestFinger'
	elif n == 2:
		return 'Ashishgup'
	elif isPowerOfTwo(n):
		return 'FastestFinger'
	elif n % 2 == 0 and n % 4 != 0:
		if not Prime(n // 2) == 0:
			return 'Ashishgup'
		else:
			return 'FastestFinger'
	else:
		return 'Ashishgup'
for T in range(t):
	n = int(input())
	print(getWinner(n))


import math
t = int(input())
while t:
	t = t - 1
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 == 1:
		print('Ashishgup')
	else:
		(x, z) = (0, 0)
		while n % 2 == 0:
			x += 1
			n = n // 2
		for i in range(3, int(math.sqrt(n)) + 1, 2):
			while n % i == 0:
				z += 1
				n = n // i
		if n > 2:
			z += 1
		if x > 1 and z == 0:
			print('FastestFinger')
		elif x == 1 and z == 1:
			print('FastestFinger')
		elif x == 1 and z > 1:
			print('Ashishgup')
		elif x == 1 and z == 0:
			print('Ashishgup')
		elif x > 1 and z > 1:
			print('Ashishgup')
		elif x > 1 and z == 1:
			print('Ashishgup')


from sys import stdin
import math

def isPrime(n):
	if n <= 1:
		return False
	if n <= 3:
		return True
	if n % 2 == 0 or n % 3 == 0:
		return False
	i = 5
	while i * i <= n:
		if n % i == 0 or n % (i + 2) == 0:
			return False
		i = i + 6
	return True
t = int(stdin.readline())
for _ in range(t):
	n = int(stdin.readline())
	if n == 2:
		print('Ashishgup')
		continue
	if n % 2 != 0:
		if n == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')
		continue
	count2 = 0
	while n % 2 == 0:
		count2 += 1
		n = n // 2
	if n == 1:
		print('FastestFinger')
	elif isPrime(n):
		if count2 == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')
	else:
		print('Ashishgup')


list_ans = []
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		list_ans.append('FastestFinger')
	elif n == 2 or n % 2 == 1:
		list_ans.append('Ashishgup')
	else:
		a = n
		while a % 2 == 0:
			a //= 2
		if n != 2 and a == 1:
			list_ans.append('FastestFinger')
		elif n // a == 2:
			for x in range(3, int(a ** 0.5) + 1, 2):
				if a % x == 0:
					list_ans.append('Ashishgup')
					break
			else:
				list_ans.append('FastestFinger')
		else:
			list_ans.append('Ashishgup')
for item in list_ans:
	print(item)


def xoxo(a):
	for i in range(1, int(a ** 0.5) + 1):
		if a % i == 0 and i > 1 and (i % 2 != 0):
			return i
			break
		elif a % i == 0 and i > 2:
			x = a / i
			if x % 2 != 0:
				return x
				break
for i in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 != 0:
		print('Ashishgup')
	else:
		ook = xoxo(n)
		if n <= 10:
			print('FastestFinger')
		elif ook:
			div = n / ook
			if div > 2 and div % 2 == 0:
				print('Ashishgup')
			else:
				print('FastestFinger')
		else:
			print('FastestFinger')


from collections import Counter
from collections import defaultdict
from collections import deque
import math
import heapq
import sys
import io, os
input = sys.stdin.readline
from bisect import *
rs = lambda : input().strip()
ri = lambda : int(input())
rl = lambda : list(map(int, input().strip().split()))
rls = lambda : list(map(str, input().split()))

def factors(n):
	l = []
	for i in range(1, int(math.sqrt(n) + 1)):
		if n % i == 0:
			if n / i == i:
				l.append(i)
			else:
				l.append(i)
				l.append(int(n / i))
	return l

def check(n):
	l = []
	mx = -1
	for i in range(1, int(math.sqrt(n) + 1)):
		if n % i == 0:
			print(i, n // i)
			if n // i != 1 and n // i % 2 != 0 and (n // (n // i) % 2 == 0):
				mx = max(mx, n // i)
			elif i != 1 and i % 2 != 0 and (n // i % 2 == 0):
				mx = max(mx, i)
	return -1
import math as mt
MAXN = 1000001
spf = [0 for i in range(MAXN)]

def sieve():
	spf[1] = 1
	for i in range(2, MAXN):
		spf[i] = i
	for i in range(4, MAXN, 2):
		spf[i] = 2
	for i in range(3, mt.ceil(mt.sqrt(MAXN))):
		if spf[i] == i:
			for j in range(i * i, MAXN, i):
				if spf[j] == j:
					spf[j] = i

def getFactorization(x):
	ret = list()
	while x != 1:
		ret.append(spf[x])
		x = x // spf[x]
	return ret

def isPrime(n):
	if n <= 1:
		return False
	if n <= 3:
		return True
	if n % 2 == 0 or n % 3 == 0:
		return False
	i = 5
	while i * i <= n:
		if n % i == 0 or n % (i + 2) == 0:
			return False
		i = i + 6
	return True
t = int(input())
for _ in range(0, t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	if n == 2:
		print('Ashishgup')
		continue
	if n % 2 != 0:
		print('Ashishgup')
	else:
		c = 0
		odd = 0
		even = 0
		c = 0
		while 1:
			if n % 2 == 0:
				even = even + 1
				n = n // 2
			else:
				break
		x = isPrime(n)
		if x:
			odd = 1
		else:
			odd = 2
		if n == 1:
			print('FastestFinger')
		elif even > 1:
			print('Ashishgup')
		elif odd == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')


z = input
mod = 10 ** 9 + 7
from collections import *
from queue import *
from sys import *
from collections import *
from math import *
from heapq import *
from itertools import *
from bisect import *
from collections import Counter as cc
from math import factorial as f

def lcd(xnum1, xnum2):
	return xnum1 * xnum2 // gcd(xnum1, xnum2)

def prime(x):
	p = ceil(x ** 0.5) + 1
	for i in range(2, p):
		if x % i == 0:
			return 0
	return 1
for _ in range(int(z())):
	n = int(z())

	def loop(x):
		c = 0
		if prime(x // 2) != 0 and 2 * (x // 2) == x and (x != 2):
			c = 1
		return c

	def winner(n):
		if n == 1:
			return 'FastestFinger'
		if int(log2(n)) == ceil(log2(n)) and int(log2(n)) > 1:
			return 'FastestFinger'
		if loop(n):
			return 'FastestFinger'
		else:
			return 'Ashishgup'
	print(winner(n))


import math

def prime(i):
	a = int(math.sqrt(i))
	for d in range(3, a + 1, 2):
		if i % d == 0:
			return False
	return True

def game(n):
	if n % 2 != 0 or n == 2:
		if n == 1:
			return 'FastestFinger'
		return 'Ashishgup'
	else:
		p2 = 0
		while n % 2 == 0:
			n //= 2
			p2 += 1
		if n == 1:
			return 'FastestFinger'
		b = prime(n)
		if not b or (b and p2 != 1):
			return 'Ashishgup'
	return 'FastestFinger'
T = int(input())
for i in range(T):
	n = int(input())
	print(game(n))


import math

def isPrime2(n):
	if n == 2 or n == 3:
		return True
	if n % 2 == 0 or n < 2:
		return False
	for i in range(3, int(n ** 0.5) + 1, 2):
		if n % i == 0:
			return False
	return True
t = int(input())
for _ in range(t):
	cnt = 0
	n = int(input())
	s1 = 'FastestFinger'
	s2 = 'Ashishgup'
	if n == 1:
		print(s1)
	elif n == 2:
		print(s2)
	elif n & 1:
		print(s2)
	elif n & n - 1 == 0:
		print(s1)
	else:
		while n % 2 == 0:
			n = n // 2
			cnt += 1
		if cnt > 1:
			print(s2)
		elif isPrime2(n):
			print(s1)
		else:
			print(s2)


import math
t = int(input())

def isPrime(x):
	if x < 2 or x % 2 == 0:
		return False
	if x == 3 or x == 5 or x == 7:
		return True
	for i in range(3, int(x ** 0.5) + 1, 2):
		if x % i == 0:
			return False
	return True

def isPow2(n):
	i = 1
	while 2 ** i <= n:
		if 2 ** i == n:
			return True
		i += 1
	return False
for i in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 == 1:
		print('Ashishgup')
	elif n == 2:
		print('Ashishgup')
	elif isPow2(n) or isPrime(int(n / 2)):
		print('FastestFinger')
	else:
		print('Ashishgup')


import sys
import math
from collections import defaultdict

def isPrime(n):
	for i in range(2, int(math.sqrt(n)) + 1):
		if n % i == 0:
			return False
	return True

def solve(test):
	n = int(input())
	if n & 1:
		if n == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')
	elif n == 2:
		print('Ashishgup')
	else:
		two = 0
		while n % 2 == 0:
			n //= 2
			two += 1
		if n == 1:
			print('FastestFinger')
		elif two == 1:
			if isPrime(n):
				print('FastestFinger')
			else:
				print('Ashishgup')
		elif two >= 2:
			print('Ashishgup')
test_cases = int(input())
for t in range(1, test_cases + 1):
	solve(t)


import math
import collections
from sys import stdin, stdout, setrecursionlimit
from bisect import bisect_left as bsl
from bisect import bisect_right as bsr
import heapq as hq
setrecursionlimit(2 ** 20)
t = 1
t = int(stdin.readline())

def pf(n):
	l = []
	no2 = 0
	while n % 2 == 0:
		l.append(2)
		no2 += 1
		n = n / 2
	for i in range(3, int(math.sqrt(n)) + 1, 2):
		while n % i == 0:
			l.append(i)
			n = n / i
	if n > 2:
		l.append(n)
	return (l, no2)
for _ in range(t):
	n = int(stdin.readline())
	ans = ''
	if n == 1:
		ans = 'FastestFinger'
	elif n == 2 or n % 2 == 1:
		ans = 'Ashishgup'
	else:
		(lp, tw) = pf(n)
		if 2 ** tw == n:
			ans = 'FastestFinger'
		elif tw == 1 and len(lp) == 2:
			ans = 'FastestFinger'
		else:
			ans = 'Ashishgup'
	print(ans)


from math import *

def isprime(num):
	for i in range(3, int(sqrt(num)) + 1, 2):
		if num % i == 0:
			return False
	return True
t = int(input())
for _ in range(t):
	n = int(input())
	res = 1
	if n == 1:
		res = 2
	elif n % 2 != 0:
		res = 1
	elif n == 2:
		res = 1
	elif n % 2 == 0:
		temp = n
		while True:
			n = n // 2
			if n == 1:
				res = 2
				break
			elif n % 2 != 0:
				if temp // n != 2:
					res = 1
				elif isprime(n):
					res = 2
				else:
					res = 1
				break
	if res == 1:
		print('Ashishgup')
	else:
		print('FastestFinger')


def ng(N):
	if N == 1:
		return 'FastestFinger'
	if N % 2 == 1 or N == 2:
		return 'Ashishgup'
	for i in range(3, int(N ** 0.5) + 1):
		if N % i == 0:
			if i % 2 == 1 or N // i % 2 == 1:
				return 'Ashishgup'
	return 'FastestFinger'
Testcases = int(input())
for tt in range(Testcases):
	print(ng(int(input())))


import math

def odd_divisors(x):
	cross_section = int(math.sqrt(x))
	while cross_section > 1:
		res = x % cross_section
		if res == 0:
			foo = x // cross_section
			if foo % 2 == 1:
				yield foo
			if cross_section % 2 == 1:
				yield cross_section
		cross_section -= 1

def solve(x):
	if x == 1:
		return 1
	elif x == 2:
		return 0
	elif x == 3:
		return 0
	elif x == 4:
		return 1
	if x % 2 == 0:
		for i in odd_divisors(x):
			if x // i != 2:
				return 0
		return 1
	return 0
names = ['Ashishgup', 'FastestFinger']
T = int(input().rstrip())
for test in range(T):
	x = int(input().rstrip())
	res = solve(x)
	print(names[res])


import math

def nb_facteurs(n, p):
	if n == 0 or n < p:
		return 0
	nb = 0
	while n % p == 0:
		nb += 1
		n = int(n / p)
	return nb
nb_cases = int(input())
while nb_cases > 0:
	nb_cases -= 1
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	if n == 2:
		print('Ashishgup')
		continue
	if n % 2 == 1:
		print('Ashishgup')
		continue
	if n % 4 == 0 and n > 2 ** nb_facteurs(n, 2):
		print('Ashishgup')
		continue
	nb_facteur_impair = 0
	for x in range(2, int(math.sqrt(n / nb_facteurs(n, 2)) + 1)):
		if x % 2 == 1:
			nb_facteur_impair += nb_facteurs(n, x)
		if nb_facteur_impair >= 1:
			break
	if nb_facteur_impair >= 1:
		print('Ashishgup')
	else:
		print('FastestFinger')


t = int(input())

def fun(n):
	a = 'Ashishgup'
	b = 'FastestFinger'
	if n == 1:
		print(b)
	elif n == 2:
		print(a)
	elif n % 2 == 1:
		print(a)
	else:
		top = 0
		while n % 2 == 0:
			n /= 2
			top += 1
		odd = 0
		for i in range(3, int(n ** 0.5) + 2):
			k = 0
			while n % i == 0:
				k += 1
				n /= i
			odd += k
		if n != 1:
			odd += 1
		if top == 1:
			if odd == 1:
				print(b)
			else:
				print(a)
		elif odd == 0:
			print(b)
		else:
			print(a)
while t:
	t -= 1
	n = int(input())
	fun(n)


import sys
import math
input = sys.stdin.readline
t = int(input())
for test in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 == 1:
		print('Ashishgup')
	elif n == 2:
		print('Ashishgup')
	elif math.log2(n) == int(math.log2(n)):
		print('FastestFinger')
	elif n % 4 == 0:
		print('Ashishgup')
	else:
		x = n / 2
		flag = 0
		for i in range(3, int(math.sqrt(x)) + 1, 2):
			if x % i == 0:
				flag = 1
				break
		if flag == 1:
			print('Ashishgup')
		else:
			print('FastestFinger')


import math

def numofodd(n):
	res = 1
	while n % 2 == 0:
		n = n // 2
	ttcnt = 0
	for i in range(3, int(math.sqrt(n) + 1)):
		count = 0
		sumi = 0
		term = 3
		while n % i == 0:
			count += 1
			n = n // i
			term *= i
			sumi += i
		res *= sumi
		ttcnt += count
	if n >= 2:
		res *= 1 + n
		ttcnt += 1
	return ttcnt
t = int(input())
for _ in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 != 0:
		print('Ashishgup')
	else:
		cnt = 0
		power = n and (not n & n - 1)
		if power:
			print('FastestFinger')
		elif n % 4 != 0:
			if numofodd(n) > 1:
				print('Ashishgup')
			else:
				print('FastestFinger')
		else:
			print('Ashishgup')


for k in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2:
		print('Ashishgup')
	else:
		p = 0
		while n % 2 == 0:
			n //= 2
			p += 1
		if n == 1:
			print('FastestFinger')
		elif p > 1:
			print('Ashishgup')
		else:
			for i in range(3, int(n ** 0.5) + 1):
				if n % i == 0:
					print('Ashishgup')
					break
			else:
				print('FastestFinger')


def isPowerOfTwo(x):
	return x and (not x & x - 1)

def isprime(n):
	if n == 1:
		return False
	i = 2
	while i * i <= n:
		if n % i == 0:
			return False
		i += 1
	return True
T = int(input())
for i in range(T):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n == 6:
		print('FastestFinger')
	elif n % 2 != 0:
		print('Ashishgup')
	elif n % 2 == 0:
		if isPowerOfTwo(n):
			print('FastestFinger')
		elif n % 4 == 0:
			print('Ashishgup')
		elif n % 2 == 0:
			p = n // 2
			if isprime(p) == True:
				print('FastestFinger')
			else:
				print('Ashishgup')


import math
test_count = int(input())
for t in range(test_count):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2 or n % 2 == 1:
		print('Ashishgup')
	else:
		factors = 0
		reminder = 1
		while n > 1 and n % 2 == 0:
			reminder *= 2
			n = n // 2
		max_value = int(math.sqrt(n))
		start = 3
		if n > 1:
			factors = 1
		for i in range(start, max_value + 1, 2):
			if n % i == 0:
				if i * i == n:
					factors += 1
				else:
					factors += 2
				break
		if factors == 0 and reminder > 2 or (factors == 1 and reminder == 2):
			print('FastestFinger')
		else:
			print('Ashishgup')


import math

def is_prime(n):
	for i in range(2, int(math.sqrt(n)) + 1):
		if n % i == 0:
			return False
	return True
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n > 2 and n % 2 == 0:
		if n & n - 1 == 0:
			print('FastestFinger')
		elif n % 4 != 0 and is_prime(n // 2):
			print('FastestFinger')
		else:
			print('Ashishgup')
	else:
		print('Ashishgup')


import sys
reader = (s.rstrip() for s in sys.stdin)
input = reader.__next__
import math
from functools import reduce

def factors(n):
	return set(reduce(list.__add__, ([i, n // i] for i in range(1, int(n ** 0.5) + 1) if n % i == 0)))

def gift():
	for _ in range(t):
		n = int(input())
		if n == 1:
			yield 'FastestFinger'
		elif n == 2:
			yield 'Ashishgup'
		elif n % 2:
			yield 'Ashishgup'
		else:
			facti = sorted(list(factors(n)))
			found = False
			for ele in facti:
				if ele % 2 and ele != 1:
					found = True
					break
			if found and len(facti) > 4:
				yield 'Ashishgup'
			else:
				yield 'FastestFinger'
t = int(input())
ans = gift()
print(*ans, sep='\n')


import os
import sys
from io import BytesIO, IOBase
input = lambda : sys.stdin.readline().rstrip('\r\n')

def list2d(a, b, c):
	return [[c] * b for i in range(a)]

def list3d(a, b, c, d):
	return [[[d] * c for j in range(b)] for i in range(a)]

def list4d(a, b, c, d, e):
	return [[[[e] * d for j in range(c)] for j in range(b)] for i in range(a)]

def ceil(x, y=1):
	return int(-(-x // y))

def Yes():
	print('Yes')

def No():
	print('No')

def YES():
	print('YES')

def NO():
	print('NO')
INF = 10 ** 18
MOD = 10 ** 9 + 7
Ri = lambda : [int(x) for x in sys.stdin.readline().split()]
ri = lambda : sys.stdin.readline().strip()
for _ in range(int(ri())):
	n = int(ri())
	if n == 1:
		print('FastestFinger')
	elif n % 2 == 1:
		print('Ashishgup')
	elif n == 2:
		print('Ashishgup')
	else:
		p = 3
		oflag = False
		cnt = 0
		cnt2 = 0
		while n % 2 == 0:
			n = n // 2
			cnt2 += 1
		while p * p <= n:
			while n % p == 0:
				n = n // p
				cnt += 1
			p += 2
		if n != 1:
			cnt += 1
		if cnt == 0:
			print('FastestFinger')
		elif cnt2 > 1:
			print('Ashishgup')
		elif cnt > 1:
			print('Ashishgup')
		else:
			print('FastestFinger')


from math import *
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 != 0:
		print('Ashishgup')
	else:
		k = 0
		m = n
		while m % 2 == 0:
			m = m // 2
			k += 1
		if m == 1:
			print('FastestFinger')
		elif k > 1:
			print('Ashishgup')
		else:
			x = False
			for i in range(3, int(sqrt(m)) + 1):
				if m % i == 0:
					x = True
					break
			if x == False:
				print('FastestFinger')
			else:
				print('Ashishgup')


import math

def main():
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 == 1 or n == 2:
		print('Ashishgup')
	else:
		k = 0
		for i in range(0, 60):
			if 2 ** i == n:
				k = 1
			if 2 ** i >= n:
				break
		if k:
			print('FastestFinger')
		else:
			n /= 2
			k = 1
			for i in range(2, int(math.sqrt(n)) + 1):
				if n % i == 0:
					k = 0
					break
			if k == 1:
				print('FastestFinger')
			else:
				print('Ashishgup')
t = int(input())
for i in range(t):
	main()


import math

def prime(n):
	l = []
	while n % 2 == 0:
		l.append(2)
		n = n / 2
	for i in range(3, int(math.sqrt(n)) + 1, 2):
		while n % i == 0:
			l.append(i)
			n = n / i
	if n > 2:
		l.append(n)
	return l
for _ in range(int(input())):
	n = int(input())
	l = prime(n)
	if n == 1:
		print('FastestFinger')
		continue
	if n == 2:
		print('Ashishgup')
		continue
	if n % 2 != 0:
		print('Ashishgup')
		continue
	eve = 0
	odd = 0
	for i in range(len(l)):
		if l[i] % 2 == 0:
			eve += 1
		else:
			odd += 1
	if odd == 0:
		print('FastestFinger')
		continue
	if eve >= 2:
		print('Ashishgup')
		continue
	if odd >= 2:
		print('Ashishgup')
		continue
	print('FastestFinger')


import math
primefactors = []

def isprime(n):
	for i in range(3, int(math.sqrt(n) + 1), 2):
		if n % i == 0:
			return 0
	else:
		return 1
for z in range(int(input())):
	primefactors = []
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 != 0:
		print('Ashishgup')
	elif float(math.log2(n)).is_integer():
		print('FastestFinger')
	elif n % 4 == 0:
		print('Ashishgup')
	elif isprime(n) == 1:
		print('FastestFinger')
	elif isprime(n) == 0:
		print('Ashishgup')


import math

def factors(n):
	out = []
	m = math.ceil(math.sqrt(n)) + 1
	for i in range(2, m):
		fl = 0
		if n == 1:
			break
		while n % i == 0:
			n = n / i
			fl = 1
		if fl == 1:
			out.append(i)
	if n != 1:
		out.append(int(n))
	return out
t = int(input())
for _ in range(t):
	n = int(input())
	m = n
	if n == 1:
		print('FastestFinger')
		continue
	if n % 2 == 1:
		print('Ashishgup')
		continue
	else:
		cnt = 0
		if n == 2:
			print('Ashishgup')
			continue
		while n % 2 == 0:
			cnt += 1
			n /= 2
		if cnt > 1 and n != 1:
			print('Ashishgup')
			continue
		if cnt == 1:
			out = factors(m)
			if len(out) == 2 and m == out[1] * out[0]:
				print('FastestFinger')
				continue
			else:
				print('Ashishgup')
				continue
		elif cnt > 1 and n == 1:
			print('FastestFinger')
			continue


for _ in range(int(input())):
	n = int(int(input()))
	if n == 1:
		print('FastestFinger')
		continue
	if n == 2:
		print('Ashishgup')
		continue
	if n & 1 == 1:
		print('Ashishgup')
	else:
		twofacts = 0
		while n % 2 == 0:
			n //= 2
			twofacts += 1
		if n != 1:
			if twofacts == 1:
				flag = 0
				for i in range(3, int(n ** 0.5) + 1, 2):
					if n % i == 0:
						flag = 1
						break
				if flag == 0:
					print('FastestFinger')
				else:
					print('Ashishgup')
			else:
				print('Ashishgup')
		else:
			print('FastestFinger')


import sys
import math
t = int(sys.stdin.readline())
for _ in range(t):
	n = int(sys.stdin.readline())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 == 1:
		print('Ashishgup')
	else:
		i = 0
		while n % 2 == 0:
			n = n / 2
			i = i + 1
		if n > 1:
			s = int(math.sqrt(n)) + 1
			for a in range(2, s):
				if n % a == 0:
					i = a
		print('Ashishgup' if n > 1 and i > 1 else 'FastestFinger')


t = int(input())
import math
for i in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	elif n % 2 != 0:
		print('Ashishgup')
		continue
	odd = 0
	even = 0
	temp = n
	while n % 2 == 0:
		n = n // 2
		even += 1
	i = 3
	while i <= int(math.sqrt(n)):
		while n % i == 0:
			odd += 1
			n = n // i
		i += 2
	if n > 2:
		odd += 1
	if even > 1 and odd > 1:
		print('Ashishgup')
	elif even > 1 and odd == 0:
		print('FastestFinger')
	elif even == 1 and odd == 1:
		print('FastestFinger')
	else:
		print('Ashishgup')


t = int(input())
for i in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 == 1:
		print('Ashishgup')
	elif n == 2:
		print('Ashishgup')
	else:
		cnt = 0
		while n % 2 == 0:
			n = n // 2
			cnt += 1
		if n == 1:
			print('FastestFinger')
		elif cnt == 1:
			possible_divisor = 2
			while possible_divisor ** 2 <= n:
				if n % possible_divisor == 0:
					break
				possible_divisor += 1
			if n % possible_divisor == 0:
				print('Ashishgup')
			else:
				print('FastestFinger')
		else:
			print('Ashishgup')


ok = []
for i in range(32):
	ok.append(pow(2, i))
t = int(input())
for t1 in range(0, t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	if n == 2 or n % 2 == 1:
		print('Ashishgup')
		continue
	if n in ok:
		print('FastestFinger')
		continue
	count = 0
	i = 2
	deg2 = 0
	while i * i <= n:
		while n % i == 0:
			if i == 2:
				deg2 += 1
			else:
				count += 1
			n /= i
		i += 1
	if n > 1:
		count += 1
	if count == 1 and deg2 == 1:
		print('FastestFinger')
	else:
		print('Ashishgup')


import io, os
input = io.BytesIO(os.read(0, os.fstat(0).st_size)).readline
import sys
from math import ceil, sqrt

def prime_judge(n):
	if n == 2:
		return True
	if n < 2 or n % 2 == 0:
		return False
	for i in range(3, int(ceil(sqrt(n))) + 1, 2):
		if n % i == 0:
			return False
	return True

def solve(n):
	if n == 1:
		return 'FastestFinger'
	if n == 2:
		return 'Ashishgup'
	if n % 2 == 1:
		return 'Ashishgup'
	m = n
	while n % 2 == 0:
		n //= 2
	if n == 1:
		return 'FastestFinger'
	r = m // n
	if r != 2:
		return 'Ashishgup'
	if prime_judge(n):
		return 'FastestFinger'
	return 'Ashishgup'

def main():
	t = int(input())
	for _ in range(t):
		n = int(input())
		ans = solve(n)
		sys.stdout.write(str(ans) + '\n')
main()


import os
import sys
from io import BytesIO, IOBase
BUFSIZE = 8192

class FastIO(IOBase):
	newlines = 0

	def __init__(self, file):
		self._fd = file.fileno()
		self.buffer = BytesIO()
		self.writable = 'x' in file.mode or 'r' not in file.mode
		self.write = self.buffer.write if self.writable else None

	def read(self):
		while True:
			b = os.read(self._fd, max(os.fstat(self._fd).st_size, BUFSIZE))
			if not b:
				break
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines = 0
		return self.buffer.read()

	def readline(self):
		while self.newlines == 0:
			b = os.read(self._fd, max(os.fstat(self._fd).st_size, BUFSIZE))
			self.newlines = b.count(b'\n') + (not b)
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines -= 1
		return self.buffer.readline()

	def flush(self):
		if self.writable:
			os.write(self._fd, self.buffer.getvalue())
			(self.buffer.truncate(0), self.buffer.seek(0))

class IOWrapper(IOBase):

	def __init__(self, file):
		self.buffer = FastIO(file)
		self.flush = self.buffer.flush
		self.writable = self.buffer.writable
		self.write = lambda s: self.buffer.write(s.encode('ascii'))
		self.read = lambda : self.buffer.read().decode('ascii')
		self.readline = lambda : self.buffer.readline().decode('ascii')
(sys.stdin, sys.stdout) = (IOWrapper(sys.stdin), IOWrapper(sys.stdout))
input = lambda : sys.stdin.readline().rstrip('\r\n')
from collections import *
from operator import itemgetter, attrgetter
from decimal import *
import bisect
import math
import heapq as hq
MOD = 10 ** 9 + 7

def is_prime(n):
	if n == 2 or n == 3:
		return True
	if n < 2 or n % 2 == 0:
		return False
	if n < 9:
		return True
	if n % 3 == 0:
		return False
	r = int(n ** 0.5)
	f = 5
	while f <= r:
		if n % f == 0:
			return False
		if n % (f + 2) == 0:
			return False
		f += 6
	return True

def pow(a, b, m):
	ans = 1
	while b:
		if b & 1:
			ans = ans * a % m
		b //= 2
		a = a * a % m
	return ans
vis = []
graph = []

def dfs(v):
	if vis[v]:
		return 0
	vis[v] = True
	temp = 0
	for vv in graph[v]:
		temp += dfs(vv)
	return 1 + temp

def ispalindrome(s):
	if s[:] == s[::-1]:
		return 1
	return 0
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	if n == 2:
		print('Ashishgup')
		continue
	if n % 2:
		print('Ashishgup')
	elif math.log2(n) != int(math.log2(n)) and is_prime(n // 2) == 0:
		print('Ashishgup')
	else:
		print('FastestFinger')


y = lambda : int(input())
t = y()
s = ['Ashishgup', 'FastestFinger']
for i in range(t):
	n = y()
	r = 0
	while n % 2 < 1:
		(n, r) = (n // 2, r + 1)
	if r == 1:
		z = n > 1
		for j in range(3, int(n ** 0.5) + 1, 2):
			if n % j < 1:
				z = 0
				break
		print(s[z])
	else:
		print(s[n < 2])


t = int(input())
A = 'Ashishgup'
B = 'FastestFinger'
for i in range(t):
	n = int(input())
	if n == 1:
		print(B)
	elif n % 2 == 1:
		print(A)
	else:
		b = 0
		for j in range(2, int(n ** 0.5) + 1):
			if n % j == 0:
				if j % 2 == 1:
					b += 1
				if n // j % 2 == 1 and j != n // j:
					b += 1
		if b == 0:
			if n == 2:
				print(A)
			else:
				print(B)
		elif n % 4 == 0:
			print(A)
		elif b > 1:
			print(A)
		else:
			print(B)


from math import *

def ka(n):
	for i in range(2, int(sqrt(n)) + 1):
		if n % i == 0:
			return 0
	return 1
for u in range(int(input())):
	n = int(input())
	l = []
	z = n
	c = 0
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 == 1:
		print('Ashishgup')
	elif n & n - 1 == 0:
		print('FastestFinger')
	elif ka(n // 2):
		print('FastestFinger')
	else:
		print('Ashishgup')


from sys import stdin, stdout

def II():
	return int(input())
oddprimes = []

def ispowerof2(num):
	if num & num - 1 == 0:
		return 1
	return 0

def SieveOfEratosthenes(n):
	global oddprimes
	prime = [True for i in range(n + 1)]
	prime[0] = False
	prime[1] = False
	p = 2
	while p * p <= n:
		if prime[p] == True:
			for i in range(p * 2, n + 1, p):
				prime[i] = False
		p += 1
	oddprimes = [p for p in range(3, n + 1) if prime[p]]

def isPrime(oddn):
	global oddprimes
	for p in oddprimes:
		if oddn == p:
			return True
		elif oddn % p == 0:
			return False
	return True
SieveOfEratosthenes(31623)
t = II()
for _ in range(t):
	n = II()
	(ff, ag) = (False, False)
	if n == 1:
		ff = True
	elif n == 2:
		ag = True
	elif n % 2 == 1:
		ag = True
	elif ispowerof2(n) == 1:
		ff = True
	elif n % 4 == 0:
		ag = True
	elif isPrime(n // 2):
		ff = True
	else:
		ag = True
	if ff:
		stdout.write('FastestFinger\n')
	else:
		stdout.write('Ashishgup\n')


from math import log2

def isPrime(n):
	if n <= 1:
		return False
	if n <= 3:
		return True
	if n % 2 == 0 or n % 3 == 0:
		return False
	i = 5
	while i * i <= n:
		if n % i == 0 or n % (i + 2) == 0:
			return False
		i += 6
	return True

def play(i):
	if i == 1:
		to_return = 1
	elif i == 2:
		to_return = 0
	elif i & 1:
		to_return = 0
	elif log2(i) == int(log2(i)):
		to_return = 1
	elif i % 4 == 0:
		to_return = 0
	elif isPrime(i // 2):
		to_return = 1
	else:
		to_return = 0
	return to_return
d = {0: 'Ashishgup', 1: 'FastestFinger'}
t = int(input())
l = []
for _ in range(t):
	n = int(input())
	print(d[play(n)])


from math import sqrt, ceil
MAX = 10 ** 9

def getPrimeFactors(n):
	nums = [0] * ceil(sqrt(n))
	nums[0] = 1
	nums[1] = 1
	for i in range(2, ceil(sqrt(sqrt(n)))):
		if not nums[i]:
			for j in range(i * i, ceil(sqrt(n)), i):
				nums[j] = 1
	return [i for (i, x) in enumerate(nums) if not x]
factors = getPrimeFactors(MAX)

def isPrime(n):
	for f in factors:
		if n % f == 0:
			return False
	return True

def numOddPowers(n):
	while n % 2 == 0:
		n /= 2
	if n in factors:
		return 1
	else:
		count = 0
		for p in factors:
			if n < p:
				break
			if n % p == 0:
				while n % p == 0:
					n /= p
					count += 1
		if isPrime(n):
			count += 1
	return count
t = int(input())
for _ in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n & n - 1 == 0:
		print('FastestFinger')
	elif n % 2:
		print('Ashishgup')
	elif n / 2 % 2:
		if numOddPowers(n) > 1:
			print('Ashishgup')
		else:
			print('FastestFinger')
	else:
		print('Ashishgup')


def f(n):
	i = 2
	while i <= n:
		if i == n:
			return True
		else:
			i = i * 2
	return False

def g(n):
	l = int(n ** (1 / 2)) + 1
	c = 0
	for i in range(2, l + 1):
		if n % i == 0:
			if i % 2 == 1 and n // i % 2 == 1:
				c = c + 2
			elif i % 2 == 1 or n // i % 2 == 1:
				c = c + 1
		if c > 1:
			return True
	return False
t = int(input())
while t > 0:
	t = t - 1
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif f(n) == True:
		print('FastestFinger')
	elif n % 2 == 1:
		print('Ashishgup')
	elif n // 2 % 2 == 0:
		print('Ashishgup')
	elif n // 2 % 2 == 1:
		if g(n // 2) == True:
			print('Ashishgup')
		else:
			print('FastestFinger')


import math

def odd(n):
	while n % 2 == 0:
		n //= 2
	return n

def isPrime(n):
	if n == 3 or n == 5:
		return True
	for i in range(3, int(math.sqrt(n)) + 1, 2):
		if n % i == 0:
			return False
	return True

def win(n):
	if n == 1:
		return 'FastestFinger'
	if n == 2:
		return 'Ashishgup'
	if n % 2 == 1:
		return 'Ashishgup'
	num = odd(n)
	if num == 1:
		return 'FastestFinger'
	remain = n // num
	if remain == 2:
		if isPrime(num):
			return 'FastestFinger'
		else:
			return 'Ashishgup'
	return 'Ashishgup'
t = int(input())
for _ in range(t):
	n = int(input())
	print(win(n))


import math

def isTrue(n):
	a = []
	while n % 2 == 0:
		n = n / 2
	for i in range(3, int(math.sqrt(n)) + 1, 2):
		while n % i == 0:
			a.append(i)
			n = n / i
	if n > 2:
		a.append(n)
	return len(a)
for t in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 != 0:
		print('Ashishgup')
	elif n % 4 == 0:
		if isTrue(n) != 0:
			print('Ashishgup')
		else:
			print('FastestFinger')
	elif isTrue(n) == 1:
		print('FastestFinger')
	else:
		print('Ashishgup')


from math import floor

def is_odd_prime(n):
	if n % 3 == 0:
		n //= 3
		if n == 1:
			return True
		else:
			return False
	f = 6
	while f < floor(n ** 0.5) + 2:
		for i in (f - 1, f + 1):
			if n % i == 0:
				n //= i
				if n == 1:
					return True
				else:
					return False
		f += 1
	return True

def f2(n):
	power = 0
	while n % 2 == 0:
		power += 1
		n //= 2
	return (power, n)

def solve(n):
	(F, A) = ('FastestFinger', 'Ashishgup')
	if n == 1:
		return F
	elif n % 2 == 1 or n == 2:
		return A
	else:
		(pow_2, odd_n) = f2(n)
		if odd_n == 1:
			return F
		elif pow_2 == 0:
			return A
		elif pow_2 == 1:
			if is_odd_prime(odd_n):
				return F
		return A
t = int(input())
for _ in range(t):
	n = int(input())
	ans = solve(n)
	print(ans)


from math import sqrt, ceil

def main():
	t = int(input())
	for i in range(t):
		n = int(input())
		if n == 1:
			print('FastestFinger')
			continue
		count_2 = 0
		while n % 2 == 0:
			n //= 2
			count_2 += 1
		if n == 1:
			if count_2 > 1:
				print('FastestFinger')
			else:
				print('Ashishgup')
		elif count_2 == 0:
			print('Ashishgup')
		elif count_2 > 1:
			print('Ashishgup')
		else:
			f = True
			for i in range(3, n):
				if i > sqrt(n):
					break
				if n % i == 0:
					f = False
			if f:
				print('FastestFinger')
			else:
				print('Ashishgup')
main()


for _ in range(int(input())):
	n = int(input())
	if n > 2 and n % 2 != 0:
		print('Ashishgup')
	elif n == 2:
		print('Ashishgup')
	elif n == 1:
		print('FastestFinger')
	else:
		x = 1
		while n & 1 != 1:
			n >>= 1
			x <<= 1
		if n == 1:
			print('FastestFinger')
		elif x == 2:
			a = 1
			for i in range(3, int(n ** 0.5) + 1, 2):
				if n % i == 0:
					a = 0
					break
			if a == 1:
				print('FastestFinger')
			else:
				print('Ashishgup')
		else:
			print('Ashishgup')


t = int(input())
for i in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 != 0:
		print('Ashishgup')
	else:
		dic = {}
		dic[2] = 0
		if n % 2 == 0:
			while n % 2 == 0:
				dic[2] += 1
				n = int(n / 2)
		for i in range(3, int(n ** 0.5) + 1):
			if n % i == 0:
				while n % i == 0:
					if i in dic:
						dic[i] += 1
					else:
						dic[i] = 1
					n = int(n / i)
		if n > 2:
			dic[n] = 1
		num_oddf = 0
		for i in dic:
			if i % 2 == 1:
				num_oddf += dic[i]
		if num_oddf == 0:
			if dic[2] == 1:
				print('Ashishgup')
			else:
				print('FastestFinger')
		elif num_oddf > 0:
			if num_oddf == 1 and dic[2] == 1:
				print('FastestFinger')
			else:
				print('Ashishgup')


def prime(n):
	for i in range(2, 1 + int(n ** 0.5)):
		if n % i == 0:
			return False
	return True

def odd_fact(n):
	if 2 * (n // 4) != n // 2 and prime(n // 2):
		return False
	while True:
		n = n // 2
		if n == 1:
			return False
		if n % 2 == 1:
			return True
for t in range(int(input())):
	n = int(input())
	if n < 3:
		print([0, 'FastestFinger', 'Ashishgup', 'Ashishgup'][n])
	elif n % 2 == 1:
		print('Ashishgup')
	elif odd_fact(n):
		print('Ashishgup')
	else:
		print('FastestFinger')


import math
import math

def primeFactors(n):
	while n % 2 == 0:
		lst.append(2)
		n = n / 2
	for i in range(3, int(math.sqrt(n)) + 1, 2):
		while n % i == 0:
			lst.append(i)
			n = n // i
	if n > 2:
		lst.append(n)
t = int(input())
for i in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 != 0:
		print('Ashishgup')
	else:
		lst = []
		primeFactors(n)
		od = 0
		for j in lst:
			if j % 2 != 0:
				od += 1
		if od == 0:
			if n != 2:
				print('FastestFinger')
			else:
				print('Ashishgup')
		elif lst.count(2) == 1:
			if od > 1:
				print('Ashishgup')
			else:
				print('FastestFinger')
		else:
			print('Ashishgup')


from collections import defaultdict
import math
from functools import reduce
from heapq import heapify, heappush, heappop
import sys
from sys import stdin, stdout
from random import seed
from random import randint
mod = 10 ** 9 + 7

def mul_mod(a, b):
	return a % mod * (b % mod) % mod

def add_mod(a, b):
	return (a % mod + b % mod) % mod

def sub_mod(a, b):
	return (a % mod - b % mod + mod) % mod

def modInverse(b):
	return pow(b, mod - 2, mod)

def div_mod(a, b):
	a = a % mod
	inv = modInverse(b)
	return inv * a % mod

class Graph:

	def __init__(self, vertices):
		self.V = vertices + 1
		self.graph = defaultdict(set)
		self.Time = 0
		self.P = 0
		self.Q = 0

	def addEdge(self, u, v):
		self.graph[u].add(v)
		self.graph[v].add(u)

	def bridgeUtil(self, u):
		self.count[u] += 1
		self.disc[u] = self.Time
		self.low[u] = self.Time
		self.Time += 1
		for v in self.graph[u]:
			if self.count[v] == 0:
				self.parent[v] = u
				self.bridgeUtil(v)
				self.count[u] += self.count[v]
				self.low[u] = min(self.low[u], self.low[v])
				if self.low[v] > self.disc[u]:
					self.Q += 1
					if self.count[v] % 2 == 0:
						self.P += 1
			elif v != self.parent[u]:
				self.low[u] = min(self.low[u], self.disc[v])

	def bridge(self):
		self.disc = [float('Inf')] * self.V
		self.low = [float('Inf')] * self.V
		self.parent = [-1] * self.V
		self.count = [0] * self.V
		for i in range(1, self.V):
			if self.count[i] == 0:
				self.bridgeUtil(i)

def prime(n):
	i = 2
	while i * i <= n:
		if n % i == 0:
			return False
		i += 1
	return True
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	if n == 2:
		print('Ashishgup')
		continue
	if n % 2 != 0:
		print('Ashishgup')
		continue
	if not n & n - 1:
		print('FastestFinger')
	elif n % 4 != 0:
		n = n // 2
		if prime(n):
			print('FastestFinger')
		else:
			print('Ashishgup')
	else:
		print('Ashishgup')


import sys
input = sys.stdin.buffer.readline
from math import *
t = int(input())
while t:
	t -= 1
	n = int(input())
	if n % 2 == 1:
		if n == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')
	else:
		count = 0
		while n % 2 == 0:
			n /= 2
			count += 1
		if n == 1:
			if count == 1:
				print('Ashishgup')
			else:
				print('FastestFinger')
		elif count == 1:
			zz = 0
			for i in range(2, int(sqrt(n)) + 1):
				if n % i == 0:
					zz = 1
					break
			if zz == 0:
				print('FastestFinger')
			else:
				print('Ashishgup')
		else:
			print('Ashishgup')


import sys
import math

def get_array():
	return list(map(int, sys.stdin.readline().strip().split()))

def get_ints():
	return map(int, sys.stdin.readline().strip().split())

def input():
	return sys.stdin.readline().strip()

def isprime(n):
	if n <= 1:
		return False
	if n <= 3:
		return True
	if n % 2 == 0 or n % 3 == 0:
		return False
	i = 5
	while i * i <= n:
		if n % i == 0 or n % (i + 2) == 0:
			return False
		i = i + 6
	return True
a = [1]
for i in range(1, 35):
	a.append(2 * a[-1])
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	elif 1 & n == 1:
		print('Ashishgup')
		continue
	elif isprime(n // 2):
		print('FastestFinger')
		continue
	elif n in a[2:]:
		print('FastestFinger')
		continue
	else:
		print('Ashishgup')


import sys, math, cmath, time, bisect
from collections import deque
start_time = time.time()
tt = 0

def inp():
	return int(input())

def inlt():
	return list(map(int, input().split()))

def insr():
	return input().strip()

def invr():
	return map(int, input().split())

def solve():
	n = inp()
	if n == 1:
		print('FastestFinger')
		return
	if n == 2:
		print('Ashishgup')
		return
	if n % 2 == 1:
		print('Ashishgup')
		return
	x = n
	cnt = 0
	two = 0
	while n > 0:
		if n % 2 == 0:
			two += 1
			n = n // 2
		else:
			break
	if two == 1:
		for i in range(2, int(math.sqrt(n) + 1), 1):
			if n % i == 0:
				while n % i == 0:
					n = n // i
					cnt += 1
		if n > 1:
			cnt += 1
		if cnt == 1:
			print('FastestFinger')
			return
		print('Ashishgup')
	elif n == 1:
		print('FastestFinger')
	else:
		print('Ashishgup')

def main():
	t = 1
	t = inp()
	for tt in range(t):
		solve()

def counter(a):
	q = [0] * max(a)
	for i in range(len(a)):
		q[a[i] - 1] = q[a[i] - 1] + 1
	return q

def string_counter(a):
	q = [0] * 26
	for i in range(len(a)):
		q[ord(a[i]) - 97] = q[ord(a[i]) - 97] + 1
	return q
main()


prime_list = []
tab = [0] * 100001
for i in range(2, 100001):
	if not tab[i]:
		prime_list.append(i)
		for j in range(1, int(100001 / i)):
			tab[j * i] = 1
t = int(input())
for _ in range(t):
	n = int(input())
	m = n
	name1 = 'Ashishgup'
	name2 = 'FastestFinger'
	if n == 1:
		print(name2)
	elif n == 2 or n % 2:
		print(name1)
	else:
		while not n % 2:
			n = n / 2
		if n == 1:
			print(name2)
		elif m / n == 2:
			ans = 0
			for i in range(len(prime_list)):
				if not n % prime_list[i] and n != prime_list[i]:
					ans = 1
					break
				if prime_list[i] > n:
					break
			if ans:
				print(name1)
			else:
				print(name2)
		else:
			print(name1)


import math

def a(n):
	e = 0
	while n % 2 == 0:
		n = n // 2
		e += 1
	o = 0
	i = 3
	while i * i <= n:
		while n % i == 0:
			o += 1
			n //= i
		i += 1
	if n > 1:
		o += 1
	return (e, o)
t = int(input())
for _ in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 != 0 or n == 2:
		print('Ashishgup')
	else:
		(e, o) = a(n)
		if o == 1:
			if e == 1:
				print('FastestFinger')
			else:
				print('Ashishgup')
		elif o == 0:
			if e == 1:
				print('Ashishgup')
			else:
				print('FastestFinger')
		else:
			print('Ashishgup')


import os
import sys
from io import BytesIO, IOBase
profile = 0
pypy = 1

def iin():
	return int(input())

def lin():
	return list(map(int, input().split()))

def factors(a):
	fact = []
	if a % 2 == 0:
		ch = 0
		while a % 2 == 0:
			ch += 1
			a //= 2
		fact.append([2, ch])
	i = 3
	while i * i <= a:
		if a % i == 0:
			ch = 0
			while a % i == 0:
				ch += 1
				a //= i
			fact.append([i, ch])
		i += 2
	if a > 1:
		fact.append([a, 1])
	return fact

def main():
	ans = ['FastestFinger', 'Ashishgup']
	T = iin()
	while T:
		T -= 1
		n = iin()
		ch = 0
		while n > 1:
			ch += 1
			ch1 = 0
			if n % 2:
				break
			while n % 2 == 0:
				ch1 += 1
				n //= 2
			if ch1 > 1:
				ch += 1
			f = factors(n)
			if f:
				ch1 = 0
				for (i, j) in f:
					ch1 += j
				if ch == 2:
					ch += 1
				elif ch1 > 1:
					ch += 2
					break
				else:
					ch += 1
					break
			break
		print(ans[ch % 2])
BUFSIZE = 8192

class FastIO(IOBase):
	newlines = 0

	def __init__(self, file):
		self._fd = file.fileno()
		self.buffer = BytesIO()
		self.writable = 'x' in file.mode or 'r' not in file.mode
		self.write = self.buffer.write if self.writable else None

	def read(self):
		while True:
			b = os.read(self._fd, max(os.fstat(self._fd).st_size, BUFSIZE))
			if not b:
				break
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines = 0
		return self.buffer.read()

	def readline(self):
		while self.newlines == 0:
			b = os.read(self._fd, max(os.fstat(self._fd).st_size, BUFSIZE))
			self.newlines = b.count(b'\n') + (not b)
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines -= 1
		return self.buffer.readline()

	def flush(self):
		if self.writable:
			os.write(self._fd, self.buffer.getvalue())
			(self.buffer.truncate(0), self.buffer.seek(0))

class IOWrapper(IOBase):

	def __init__(self, file):
		self.buffer = FastIO(file)
		self.flush = self.buffer.flush
		self.writable = self.buffer.writable
		self.write = lambda s: self.buffer.write(s.encode('ascii'))
		self.read = lambda : self.buffer.read().decode('ascii')
		self.readline = lambda : self.buffer.readline().decode('ascii')
if pypy:
	(sys.stdin, sys.stdout) = (IOWrapper(sys.stdin), IOWrapper(sys.stdout))
	input = lambda : sys.stdin.readline().rstrip('\r\n')
if profile:
	import cProfile
	cProfile.run('main()')
else:
	main()


def factors(n):
	even = 0
	while n > 0 and n % 2 == 0:
		n = n // 2
		even += 1
	return even

def prime(n):
	if n == 1:
		return False
	for i in range(2, int(n ** 0.5) + 1):
		if n % i == 0:
			return False
	return True

def solve(n, ans):
	if n == 2:
		ans.append('Ashishgup')
		return
	even = factors(n)
	x = pow(2, even)
	if x == n:
		ans.append('FastestFinger')
	elif n % 2 != 0:
		ans.append('Ashishgup')
	elif even > 1:
		ans.append('Ashishgup')
	elif prime(n // 2):
		ans.append('FastestFinger')
	else:
		ans.append('Ashishgup')

def main():
	t = int(input())
	ans = []
	for i in range(t):
		n = int(input())
		solve(n, ans)
	for i in ans:
		print(i)
main()


import math

def isPrime(n):
	if n <= 1:
		return False
	if n <= 3:
		return True
	if n % 2 == 0 or n % 3 == 0:
		return False
	i = 5
	while i * i <= n:
		if n % i == 0 or n % (i + 2) == 0:
			return False
		i = i + 6
	return True
for _ in range(int(input())):
	n = int(input())
	f = 1
	if n == 1:
		f = 0
	elif n == 2:
		f = 1
	elif n % 2 != 0:
		f = 1
	else:
		f = 0
		x = n // 2
		if isPrime(x):
			f = 0
		elif x & x - 1 == 0:
			f = 0
		else:
			f = 1
	if f == 1:
		print('Ashishgup')
	else:
		print('FastestFinger')


def criba_eratostenes(n):
	multiplos = set()
	prime = set()
	for i in range(2, n + 1):
		if i not in multiplos:
			prime.add(i)
			multiplos.update(range(i * i, n + 1, i))
	return prime
primes = criba_eratostenes(31650)
two = {1 << i for i in range(2, 40)}
for i in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2:
		print('Ashishgup')
	elif n in two:
		print('FastestFinger')
	elif n % 4:
		n /= 2
		t = True
		for i in primes:
			if not n % i:
				if n != i:
					print('Ashishgup')
					t = False
				break
		if t:
			print('FastestFinger')
	else:
		print('Ashishgup')


import math, string, itertools, fractions, heapq, collections, re, array, bisect, sys, copy, functools
sys.setrecursionlimit(10 ** 7)
inf = 10 ** 20
eps = 1.0 / 10 ** 10
mod = 10 ** 9 + 7
mod2 = 998244353
dd = [(-1, 0), (0, 1), (1, 0), (0, -1)]
ddn = [(-1, 0), (-1, 1), (0, 1), (1, 1), (1, 0), (1, -1), (0, -1), (-1, -1)]

def LI():
	return list(map(int, sys.stdin.readline().split()))

def LLI():
	return [list(map(int, l.split())) for l in sys.stdin.readlines()]

def LI_():
	return [int(x) - 1 for x in sys.stdin.readline().split()]

def LF():
	return [float(x) for x in sys.stdin.readline().split()]

def LS():
	return sys.stdin.readline().split()

def I():
	return int(sys.stdin.readline())

def F():
	return float(sys.stdin.readline())

def S():
	return input()

def pf(s):
	return print(s, flush=True)

def pe(s):
	return print(str(s), file=sys.stderr)

def JA(a, sep):
	return sep.join(map(str, a))

def JAA(a, s, t):
	return s.join((t.join(map(str, b)) for b in a))

def IF(c, t, f):
	return t if c else f

class Prime:

	def __init__(self, n):
		self.M = m = int(math.sqrt(n)) + 10
		self.A = a = [True] * m
		a[0] = a[1] = False
		self.T = t = [2]
		for j in range(4, m, 2):
			a[j] = False
		for i in range(3, m, 2):
			if not a[i]:
				continue
			t.append(i)
			for j in range(i * i, m, i):
				a[j] = False
		self.ds_memo = {}
		self.ds_memo[1] = set([1])

	def is_prime(self, n):
		return self.A[n]

	def division(self, n):
		d = collections.defaultdict(int)
		for c in self.T:
			while n % c == 0:
				d[c] += 1
				n //= c
			if n < 2:
				break
		if n > 1:
			d[n] += 1
		return sum(d.values())

def main():
	t = I()
	pr = Prime(10 ** 10)
	rr = []
	for _ in range(t):
		n = I()
		r = True
		if n == 1 or n == 4:
			r = False
		elif n == 2 or n % 2 == 1:
			r = True
		else:
			c = 0
			while n % 2 == 0:
				c += 1
				n //= 2
			if n == 1:
				r = False
			elif c > 1:
				r = True
			else:
				d = pr.division(n)
				r = d > 1
		rr.append(IF(r, 'Ashishgup', 'FastestFinger'))
	return JA(rr, '\n')
print(main())


def isPrime(n):
	if n <= 1:
		return False
	if n <= 3:
		return True
	if n % 2 == 0 or n % 3 == 0:
		return False
	i = 5
	while i * i <= n:
		if n % i == 0 or n % (i + 2) == 0:
			return False
		i = i + 6
	return True
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 == 1:
		print('Ashishgup')
	else:
		pow2 = 0
		while n % 2 == 0:
			n = n // 2
			pow2 += 1
		if n == 1:
			print('FastestFinger')
		else:
			prime = isPrime(n)
			if pow2 > 1:
				print('Ashishgup')
			elif prime:
				print('FastestFinger')
			else:
				print('Ashishgup')


def is_prime(num):
	i = 2
	while i * i <= num:
		if num % i == 0:
			return False
		i += 1
	return True
t = int(input())
for ele in range(t):
	flag = True
	n = int(input())
	if n == 2:
		print('Ashishgup')
		flag = False
	elif n == 1:
		print('FastestFinger')
		flag = False
	elif n % 2 == 1:
		print('Ashishgup')
		flag = False
	counter = 0
	while n % 2 == 0:
		counter += 1
		n //= 2
	if (counter == 1 and (not is_prime(n)) or (counter >= 2 and n != 1)) and flag:
		print('Ashishgup')
	elif flag:
		print('FastestFinger')


for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 == 1:
		print('Ashishgup')
	else:
		count = 0
		while n % 2 == 0:
			n /= 2
			count += 1
		if n == 1:
			print('FastestFinger')
		elif count > 1:
			print('Ashishgup')
		else:
			prime = True
			for x in range(3, int(n ** 0.5) + 1):
				if n % x == 0:
					prime = False
					break
			if prime:
				print('FastestFinger')
			else:
				print('Ashishgup')


import math
global N
N = 50000

def check(n):
	for i in range(2, min(N, n)):
		if n % i == 0:
			return False
	return True
t = int(input())
for _ in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 != 0:
		print('Ashishgup')
	else:
		m = n // 2
		k = math.log(n, 2)
		if math.ceil(k) == math.floor(k):
			print('FastestFinger')
		elif check(m):
			print('FastestFinger')
		else:
			print('Ashishgup')


t = int(input())
for i in range(t):
	n = int(input())
	(count, cc) = (0, 0)
	if n == 1:
		print('FastestFinger')
	elif n == 2 or n % 2 == 1:
		print('Ashishgup')
	else:
		for x in range(2, int(n ** 0.5) + 1):
			if n % x == 0:
				cc += 1
				while n % x == 0:
					n /= x
					count += 1
				if n == 1:
					break
		if n > 1:
			cc += 1
			count += 1
		if cc == 1:
			print('FastestFinger')
		elif cc == 2 and count == 2:
			print('FastestFinger')
		else:
			print('Ashishgup')


import math

def primeFactors(n):
	(even, odd) = (0, 0)
	while n % 2 == 0:
		even += 1
		n = n / 2
	for i in range(3, int(math.sqrt(n)) + 1, 2):
		while n % i == 0:
			odd += 1
			n = n / i
	if n > 2:
		odd += 1
	return (odd, even)
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 != 0:
		print('Ashishgup')
	elif n & n - 1 == 0:
		print('FastestFinger')
	elif n % 2 == 0 and n % 4 == 0:
		print('Ashishgup')
	else:
		x = primeFactors(n // 2)
		if x[0] == 1 and x[1] == 0:
			print('FastestFinger')
		else:
			print('Ashishgup')


import math

def Log2(x):
	if x == 0:
		return false
	return math.log10(x) / math.log10(2)

def isPowerOfTwo(n):
	return math.ceil(Log2(n)) == math.floor(Log2(n))

def isPrime(n):
	if n <= 1:
		return False
	if n <= 3:
		return True
	if n % 2 == 0 or n % 3 == 0:
		return False
	i = 5
	while i * i <= n:
		if n % i == 0 or n % (i + 2) == 0:
			return False
		i = i + 6
	return True
t = int(input())
for _ in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 == 0 and n % 4 != 0 and (n / 2 % 2 == 1) and isPrime(n / 2) or isPowerOfTwo(n):
		print('FastestFinger')
	else:
		print('Ashishgup')


import math

def prime(n):
	if n <= 1:
		return False
	if n <= 3:
		return True
	if n % 2 == 0 or n % 3 == 0:
		return False
	for i in range(5, int(math.sqrt(n)) + 1, 6):
		if n % i == 0 or n % (i + 2) == 0:
			return False
	return True

def solve():
	n = int(input())
	if n == 1:
		print('FastestFinger')
		return
	if n == 2 or n % 2:
		print('Ashishgup')
		return
	c = 0
	while n % 2 == 0:
		n = n // 2
		c += 1
	if n == 1:
		print('FastestFinger')
		return
	if c == 1 and prime(n):
		print('FastestFinger')
		return
	print('Ashishgup')
for _ in range(int(input())):
	solve()


from collections import deque
from collections import OrderedDict
import math
import sys
import os
from io import BytesIO
import threading
import bisect
import heapq
input = lambda : sys.stdin.readline().rstrip('\r\n')
for t in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	elif n == 2:
		print('Ashishgup')
		continue
	elif n % 2 == 1:
		print('Ashishgup')
		continue
	sqrN = int(math.sqrt(n))
	cDiv = 0
	cDiv2 = 0
	while n % 2 == 0:
		n /= 2
		cDiv2 += 1
	for i in range(3, (sqrN + 1) * 2):
		if i > n:
			if n != 1:
				cDiv += 1
			break
		while n % i == 0:
			n /= i
			cDiv += 1
	if n != 1:
		cDiv += 1
	if cDiv2 == 1:
		if cDiv == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')
	elif cDiv == 0:
		print('FastestFinger')
	else:
		print('Ashishgup')


from math import sqrt

def factorize(n):
	d = dict()
	for i in range(3, int(sqrt(n)) + 1):
		while n % i == 0:
			d[i] = d.get(i, 0) + 1
			n = int(n / i)
		i += 2
	if n > 2:
		d[n] = 1
	return d
p = 'Ashishgup'
q = 'FastestFinger'
for _ in range(int(input())):
	n = int(input())
	f = 0
	while True:
		if n == 1:
			if f == 0:
				print(q)
			else:
				print(p)
			break
		if n % 2 == 1:
			if f == 0:
				print(p)
			else:
				print(q)
			break
		k = n
		c = 0
		while k % 2 == 0:
			c += 1
			k //= 2
		if k == 1:
			n -= 1
		elif c > 1:
			n //= k
		else:
			d = factorize(n // 2)
			if len(d) == 1 and sum(d.values()) == 1:
				if f == 0:
					print(q)
				else:
					print(p)
				break
			for i in d:
				n = 2 * i
				break
		f = (f + 1) % 2


import math

def isPower(n):
	if n == 0:
		return False
	while n != 1:
		if n % 2 != 0:
			return False
		n = n // 2
	return True
t = int(input())
for _ in range(t):
	n = int(input())
	y = int(math.sqrt(n // 2))
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 != 0:
		print('Ashishgup')
	elif isPower(n):
		print('FastestFinger')
	else:
		f = -1
		for i in range(2, y + 1):
			if n // 2 % i == 0:
				print('Ashishgup')
				f = 0
				break
		if f == -1:
			print('FastestFinger')


import sys
input = sys.stdin.readline
import math
Q = int(input())
Query = [int(input()) for _ in range(Q)]
for N in Query:
	n2 = 0
	t = N
	while t % 2 == 0:
		t //= 2
		n2 += 1
	ok = False
	for k in range(3, int(math.sqrt(t)) + 3):
		if t % k == 0 and t != k:
			ok = True
	print('FastestFinger' if (t == 1 or (not ok and n2 == 1)) and N != 2 else 'Ashishgup')


import logging, sys
from math import sqrt
logging.basicConfig(level=logging.INFO)

def main():
	test = int(sys.stdin.readline())
	while test > 0:
		test -= 1
		n = int(sys.stdin.readline())
		S = int(sqrt(n))
		kt = int(0)
		if n % 2 == 1 and n > 1:
			kt = 1
			print('Ashishgup')
			continue
		if n == 2:
			kt = 1
			print('Ashishgup')
			continue
		le = 0
		for k in range(2, S + 1, 1):
			if n % k == 0:
				if k % 2 == 1:
					le += 1
				if n / k % 2 == 1:
					le += 1
		if le > 1:
			print('Ashishgup')
		elif le == 0:
			print('FastestFinger')
		elif n / 2 % 2 == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')
try:
	sys.stdin = open('input.txt', 'r')
	sys.stdout = open('output.txt', 'w')
except:
	pass
main()


def isPrime(n):
	for i in range(2, int(n ** 0.5) + 1):
		if n % i == 0:
			return False
	return True
n = int(input())
for i in range(n):
	a = int(input())
	if a == 1:
		print('FastestFinger')
	elif a == 2:
		print('Ashishgup')
	elif a % 2 != 0:
		print('Ashishgup')
	else:
		y = bin(a).split('b')
		if y[1].count('1') == 1:
			print('FastestFinger')
		else:
			r = int(a / 2)
			if r % 2 != 0:
				if isPrime(r) == True:
					print('FastestFinger')
				else:
					print('Ashishgup')
			elif r % 2 == 0:
				print('Ashishgup')


t = int(input())

def check(n):
	cnt = 0
	for i in range(1, int(n ** 0.5) + 1):
		if n % i == 0:
			if n // i != i:
				cnt += 1
			cnt += 1
	return cnt
for _ in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	if n % 2 == 1 or n == 2:
		print('Ashishgup')
	else:
		bN = bin(n)
		for i in range(len(bN) - 1, -1, -1):
			if bN[i] == '1':
				cnt = len(bN) - i - 1
				n = n // 2 ** cnt
				break
		if n == 1:
			print('FastestFinger')
			continue
		if cnt == 1:
			if check(n) <= 2:
				print('FastestFinger')
			else:
				print('Ashishgup')
		else:
			print('Ashishgup')


import math

def odddivisors(n):
	return [i for i in range(3, n + 1) if i % 2 == 1 and n % i == 0]

def solve(n):
	sol = [None] * (n + 1)
	for i in range(1, n + 1):
		if i == 1:
			sol[i] == 'B'
		for j in [i - 1] + [i // d for d in odddivisors(i)]:
			if sol[j] == 'B':
				sol[i] = 'A'
				break
		else:
			sol[i] = 'B'
		print(f"{i}: {sol[i]}  {(j if sol[i] == 'A' else '')}")
	print(f"even A: {[i for i in range(1, n + 1) if i % 2 == 0 and sol[i] == 'A']}")
	print('')
	print(f"even B: {[i for i in range(1, n + 1) if i % 2 == 0 and sol[i] == 'B']}")
	print('')
	print(f"odd A:  {[i for i in range(1, n + 1) if i % 2 == 1 and sol[i] == 'A']}")
	print('')
	print(f"odd B:  {[i for i in range(1, n + 1) if i % 2 == 1 and sol[i] == 'B']}")
	print('')

def power_of_2(n):
	while n > 1:
		if n % 2 == 1:
			return False
		n //= 2
	return True

def prime(n):
	if n <= 3:
		return True
	if n % 2 == 0 or n % 3 == 0:
		return False
	lim = int(math.sqrt(n)) + 1
	for i in range(5, lim + 1, 6):
		if n % i == 0 or n % (i + 2) == 0:
			return False
	return True

def solve2(n):
	if n == 1:
		return False
	if n % 2 == 1:
		return True
	if n == 2:
		return True
	if power_of_2(n):
		return False
	if prime(n // 2):
		return False
	return True
t = int(input().strip())
for _ in range(t):
	n = int(input().strip())
	print('Ashishgup' if solve2(n) else 'FastestFinger')


def isPrime(n):
	if n == 2 or n == 3:
		return True
	if n % 2 == 0 or n < 2:
		return False
	for i in range(3, int(n ** 0.5) + 1, 2):
		if n % i == 0:
			return False
	return True
t = int(input())
pof2 = set([2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 16384, 32768, 65536, 131072, 262144, 524288, 1048576, 2097152, 4194304, 8388608, 16777216, 33554432, 67108864, 134217728, 268435456, 536870912, 1073741824])
for _ in range(t):
	n = int(input())
	if n == 1:
		ans = 'FastestFinger'
	elif n == 2:
		ans = 'Ashishgup'
	elif n % 2 == 1:
		ans = 'Ashishgup'
	elif n in pof2:
		ans = 'FastestFinger'
	else:
		n = n // 2
		if n % 2 == 0:
			ans = 'Ashishgup'
		else:
			while n % 2 == 0:
				n = n // 2
			if isPrime(n):
				ans = 'FastestFinger'
			else:
				ans = 'Ashishgup'
	print(ans)


def get_sieve_of_eratosthenes_new(n):
	import math
	if not isinstance(n, int):
		raise TypeError('n is int type.')
	if n < 2:
		raise ValueError('n is more than 2')
	prime = []
	limit = math.sqrt(n)
	data = [i + 1 for i in range(1, n)]
	while True:
		p = data[0]
		if limit <= p:
			return prime + data
		prime.append(p)
		data = [e for e in data if e % p != 0]

def ind(b, n):
	res = 0
	while n % b == 0:
		res += 1
		n //= b
	return res
ban = [2 ** i for i in range(2, 40)]
prime = get_sieve_of_eratosthenes_new(32000)
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	elif n == 2:
		print('Ashishgup')
	elif n in ban:
		print('FastestFinger')
	elif n % 2 == 1 or n % 4 == 0:
		print('Ashishgup')
	else:
		count = 0
		for p in prime:
			a = ind(p, n)
			if p != 2:
				count += a
			n //= p ** a
		if n != 1:
			count += 1
		if count == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')


import itertools
flatten_iter = itertools.chain.from_iterable

def factors(n):
	return set(flatten_iter(((i, n // i) for i in range(2, int(n ** 0.5) + 1) if n % i == 0)))
t = int(input())
for i in range(t):
	n = int(input())
	count = 0
	while True:
		if n == 1:
			break
		if n % 2 == 1:
			count += 1
			break
		test = True
		fac = sorted(factors(n))
		for i in range(len(fac)):
			if fac[-i - 1] % 2 == 1 and int(n / fac[-i - 1]) != 2:
				n = int(n / fac[-i - 1])
				count += 1
				test = False
				break
		if test:
			n -= 1
			count += 1
	if count % 2 == 0:
		print('FastestFinger')
	else:
		print('Ashishgup')


T = int(input())
ans_map = ['Ashishgup', 'FastestFinger']

def isPrime(n):
	if n <= 1:
		return False
	if n <= 3:
		return True
	if n % 2 == 0 or n % 3 == 0:
		return False
	i = 5
	while i * i <= n:
		if n % i == 0 or n % (i + 2) == 0:
			return False
		i = i + 6
	return True
for t in range(T):
	n = int(input())
	if n == 1:
		print(ans_map[1])
	elif n == 2:
		print(ans_map[0])
	elif n % 2 == 1:
		print(ans_map[0])
	else:
		tmp = 2
		while tmp < n:
			tmp *= 2
		if tmp == n:
			print(ans_map[1])
			continue
		if n % 4 == 0:
			print(ans_map[0])
		else:
			while n % 2 == 0:
				n //= 2
			if isPrime(n):
				print(ans_map[1])
			else:
				print(ans_map[0])


def is_prime(n):
	if n == 1:
		return False
	if n == 2 or n == 3 or n == 5:
		return True
	lim = int(n ** 0.5)
	for d in range(2, lim + 1):
		if n % d == 0:
			return False
	return True

def winnable(n):
	if n == 2:
		return True
	elif not n - 1 & n:
		return False
	elif n & 1:
		return True
	elif n % 4 == 0:
		return True
	elif is_prime(n >> 1):
		return False
	else:
		return True
for t in range(int(input())):
	n = int(input())
	print('Ashishgup' if winnable(n) else 'FastestFinger')


import math

def find_divisors(n):
	li = []
	for i in range(1, int(math.sqrt(n)) + 1):
		if n % i == 0:
			li.append(i)
			li.append(n // i)
	return li
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 == 1:
		print('Ashishgup')
	else:
		li = find_divisors(n)
		li = sorted(li)
		odd_li = []
		for (idx, i) in enumerate(li):
			if i % 2 == 1 and i != 1:
				odd_li.append(i)
		if not odd_li:
			print('FastestFinger')
		elif len(odd_li) == 1 and n // odd_li[-1] == 2:
			print('FastestFinger')
		elif len(odd_li) == 1 and n // odd_li[-1] > 2:
			print('Ashishgup')
		else:
			print('Ashishgup')


from math import sqrt
first = 'Ashishgup'
second = 'FastestFinger'

def game(n):
	if n == 1:
		return second
	elif n == 2:
		return first
	elif n % 2 == 1:
		return first
	else:
		g = n
		count = 0
		while n != 1:
			if n % 2 == 0:
				n = n // 2
				count += 1
			else:
				break
		if n == 1:
			return second
		if count == 1:
			count2 = 0
			for i in range(3, int(sqrt(n) + 2), 2):
				if n % i == 0:
					count2 += 1
			if count2 == 0:
				return second
			return first
		else:
			return first
for i in range(int(input().strip())):
	print(game(int(input().strip())))


from sys import stdin, stdout
from math import gcd, ceil, sqrt
ii1 = lambda : int(stdin.readline().strip())
is1 = lambda : stdin.readline().strip()
iia = lambda : list(map(int, stdin.readline().strip().split()))
isa = lambda : stdin.readline().strip().split()
mod = 1000000007

def divisors(num):
	temp = set([1])
	for i in range(1, int(num ** 0.5) + 1):
		if num % i == 0:
			if i % 2 != 0 and num // i != 2:
				temp.add(i)
			if num // i % 2 != 0 and i != 2:
				temp.add(num // i)
	return max(temp)
tc = ii1()
for i in range(tc):
	n = ii1()
	if n == 1:
		print('FastestFinger')
	elif n % 2 != 0:
		print('Ashishgup')
	elif n == 2:
		print('Ashishgup')
	else:
		flip = False
		while True:
			cur = divisors(n)
			if cur == 1:
				break
			n = n // cur
			flip = True if not flip else False
		else:
			break
		if flip:
			print('Ashishgup')
		else:
			print('FastestFinger')


from sys import stdin, stdout
from math import gcd, sqrt
from collections import deque
input = stdin.readline
R = lambda : map(int, input().split())
I = lambda : int(input())
S = lambda : input().rstrip('\n')
L = lambda : list(R())
P = lambda x: stdout.write(x)
hg = lambda x, y: (y + x - 1) // x * x
pw = lambda x: 1 if x == 1 else 1 + pw(x // 2)
chk = lambda x: chk(x // 2) if not x % 2 else True if x == 1 else False
N = 10 ** 6

def div(x):
	cnt = 0
	while x % 2 == 0:
		x //= 2
	if x == 1:
		return 0
	for i in range(3, int(sqrt(x)) + 1, 2):
		while x % i == 0:
			cnt += 1
			x //= i
	if x != 1:
		cnt += 1
	return cnt
for _ in range(I()):
	n = I()
	cnt = 1
	a = ['Ashishgup', 'FastestFinger']
	p = div(n)
	if n % 2 and n != 1 or n == 2:
		print(a[0])
	elif p == 1 and n % 4 == 0 or p > 1:
		print(a[0])
	else:
		print(a[1])


import math

def primeFactors(n):
	ans = 0
	t = 2
	n = n / 2
	if n % 2 == 0:
		t = 4
	while n % 2 == 0:
		n = n / 2
	for i in range(3, int(math.sqrt(n)) + 1, 2):
		while n % i == 0:
			ans += 1
			n = n / i
	if n > 1:
		ans += 1
	return (t, ans)
for i in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 == 1 or n == 2:
		print('Ashishgup')
	else:
		(t, moves) = primeFactors(n)
		if t == 2:
			if moves > 1:
				print('Ashishgup')
			else:
				print('FastestFinger')
		elif moves == 0:
			print('FastestFinger')
		else:
			print('Ashishgup')


from sys import stdin, stdout
from math import sqrt, floor

def ispow2(n):
	while n % 2 == 0:
		n /= 2
	return n == 1

def isprime(n):
	if n % 2 == 0:
		return False
	limit = floor(sqrt(n)) + 1
	for f in range(3, limit, 2):
		if n % f == 0:
			return False
	return True
t = int(stdin.readline().strip())
for _ in range(t):
	n = int(stdin.readline().strip())
	if n == 1:
		stdout.write('FastestFinger\n')
	elif n == 2 or n % 2:
		stdout.write('Ashishgup\n')
	elif ispow2(n):
		stdout.write('FastestFinger\n')
	else:
		n /= 2
		if isprime(n):
			stdout.write('FastestFinger\n')
		else:
			stdout.write('Ashishgup\n')


T = int(input())
while T > 0:
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2 or n % 2 == 1:
		print('Ashishgup')
	else:
		cur = n
		even = 0
		while cur % 2 == 0:
			cur //= 2
			even += 1
		if cur == 1:
			print('FastestFinger')
		elif even >= 2:
			print('Ashishgup')
		else:
			find = False
			for i in range(3, int(cur ** 0.5) + 1, 2):
				if cur % i == 0:
					find = True
					break
			if find is False:
				print('FastestFinger')
			else:
				print('Ashishgup')
	T -= 1


import math

def isprime(n):
	for i in range(2, int(math.sqrt(n)) + 1):
		if n % i == 0:
			return False
	return True
for _ in range(int(input())):
	n = int(input())
	z = math.log10(n) / math.log10(2)
	if n == 2:
		print('Ashishgup')
	elif n == 1 or z == math.floor(z):
		print('FastestFinger')
	elif n % 2 == 0 and isprime(n // 2):
		print('FastestFinger')
	else:
		print('Ashishgup')


from sys import stdin, stdout
from math import gcd, log2, log10, floor, ceil
import math
from collections import defaultdict, OrderedDict
from bisect import bisect_left

def divisors(n):
	l = []
	for i in range(1, int(n ** 0.5) + 1):
		if n % i == 0:
			l.append(i)
			l.append(n // i)
	returner = []
	for i in l:
		if i > 1 and i % 2 == 1:
			returner.append(i)
	return returner

def fun(n):
	if n == 1:
		return 0
	if n % 2 == 1:
		return 1
	maxa = fun(n - 1) ^ 1
	if maxa == 1:
		return 1
	for i in divisors(n):
		maxa = max(maxa, 1 ^ fun(n // i))
		if maxa == 1:
			return 1
	return maxa
for i in range(int(input())):
	n = int(input())
	answer = fun(n)
	a = 'Ashishgup'
	f = 'FastestFinger'
	if answer % 2 == 1:
		print(a)
	elif answer % 2 == 0:
		print(f)


import math

def isPowerOfTwo(x):
	return x and (not x & x - 1)

def isPrime(n):
	if n <= 1:
		return False
	if n <= 3:
		return True
	if n % 2 == 0 or n % 3 == 0:
		return False
	i = 5
	while i * i <= n:
		if n % i == 0 or n % (i + 2) == 0:
			return False
		i = i + 6
	return True
t = int(input())
for _ in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	if n % 2 != 0 or n == 2:
		print('Ashishgup')
		continue
	if isPowerOfTwo(n):
		print('FastestFinger')
		continue
	var = n & ~(n - 1)
	if var != 2:
		print('Ashishgup')
		continue
	temp = n // 2
	if isPrime(temp):
		print('FastestFinger')
	else:
		print('Ashishgup')


def isPrime(n):
	if n <= 1:
		return False
	if n <= 3:
		return True
	if n % 2 == 0 or n % 3 == 0:
		return False
	i = 5
	while i * i <= n:
		if n % i == 0 or n % (i + 2) == 0:
			return False
		i = i + 6
	return True

def isp2(n):
	c = 0
	while n % 2 == 0:
		n //= 2
		c += 1
	if c > 1 and n == 1:
		return True
	if c > 1:
		return False
	if isPrime(n):
		return True
	return False
tc = int(input())
for _ in range(tc):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 == 1:
		print('Ashishgup')
	elif isp2(n):
		print('FastestFinger')
	else:
		print('Ashishgup')


t = int(input())
for i in range(t):
	n = int(input())
	x = 'Ashishgup'
	y = 'FastestFinger'
	if n == 1:
		print(y)
	elif n % 2:
		print(x)
	elif n == 2:
		print(x)
	else:
		evencount = 0
		while n % 2 == 0:
			n //= 2
			evencount += 1
		count = 0
		for j in range(3, int(n ** 0.5) + 1, 2):
			while n % j == 0:
				count += 1
				n //= j
		if n > 2:
			count += 1
		if count == 0:
			print(y)
		elif count == 1 and evencount == 1:
			print(y)
		else:
			print(x)


test = int(input())
for i in range(test):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2:
		print('Ashishgup')
	elif n == 2:
		print('Ashishgup')
	elif n & n - 1 == 0:
		print('FastestFinger')
	else:
		res = []
		i = 2
		while i ** 2 <= n:
			cnt = 0
			while n % i == 0:
				n = n // i
				cnt += 1
			res.append((i, cnt))
			i += 1
		if n > 1:
			res.append((n, 1))
		prime = 0
		alpha = 0
		for i in res:
			if i[0] != 2:
				prime += i[1]
			else:
				alpha = i[1]
		if alpha > 1:
			print('Ashishgup')
		elif prime >= 2:
			print('Ashishgup')
		else:
			print('FastestFinger')


import math

def primeFactors(n):
	oc = 0
	tc = 0
	while n % 2 == 0:
		tc += 1
		n = n // 2
	for i in range(3, int(math.sqrt(n)) + 1, 2):
		while n % i == 0:
			oc += 1
			n = n // i
	if n > 2:
		oc += 1
	return (oc, tc)
cases = int(input())
for t in range(cases):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 != 0:
		print('Ashishgup')
	else:
		(oc, tc) = primeFactors(n)
		if oc == 0:
			print('FastestFinger')
		elif tc > 1:
			print('Ashishgup')
		elif oc > 1:
			print('Ashishgup')
		else:
			print('FastestFinger')


import io
import os
input = io.BytesIO(os.read(0, os.fstat(0).st_size)).readline

def get_str():
	return input().decode().strip()

def rint():
	return map(int, input().split())

def oint():
	return int(input())

def max_odd_div(n):
	while n % 2 == 0:
		n //= 2
	return n

def find_min_div(n):
	i = 2
	while i * i <= n:
		if n % i == 0:
			return i
		i += 1
	return 1
name = ['FastestFinger', 'Ashishgup']
t = oint()
for _ in range(t):
	n = oint()
	turn = 0
	while True:
		if n == 1:
			break
		max_od = max_odd_div(n)
		if max_od > 1:
			if n // max_od == 2:
				min_div = find_min_div(max_od)
				n //= max_od // min_div
				turn += 1
			else:
				n //= max_od
				turn += 1
		else:
			n -= 1
			turn += 1
	print(name[turn % 2])


import sys
from collections import defaultdict as dd
from collections import deque
from fractions import Fraction as f
from copy import *
from bisect import *
from heapq import *
from math import *
from itertools import permutations

def eprint(*args):
	print(*args, file=sys.stderr)
zz = 1
if zz:
	input = sys.stdin.readline
else:
	sys.stdin = open('input.txt', 'r')
	sys.stdout = open('all.txt', 'w')

def li():
	return [int(x) for x in input().split()]

def fi():
	return int(input())

def si():
	return list(input().rstrip())

def mi():
	return map(int, input().split())

def gh():
	sys.stdout.flush()

def graph(n, m):
	for i in range(m):
		(x, y) = mi()
		a[x].append(y)
		a[y].append(x)

def bo(i):
	return ord(i) - ord('a')
t = fi()
while t > 0:
	t -= 1
	n = fi()
	ans = ['FastestFinger', 'Ashishgup']
	if n % 2 == 1 and n != 1 or n == 2:
		print(ans[1])
	elif n == 1:
		print(ans[0])
	else:
		g = 0
		p = n
		while p % 2 == 0:
			p //= 2
			g += 1
		flag = 0
		s = set()
		for i in range(1, int(sqrt(n)) + 10):
			if n % i == 0:
				l = n // i
				if i != 1 and i % 2 == 1:
					s.add(i)
				if l != 1 and l % 2 == 1:
					s.add(l)
		flag = len(set(s))
		if flag == 1 and g == 1 or flag == 0:
			print(ans[0])
		else:
			print(ans[1])


import math

def isPrime(n):
	if n <= 1:
		return False
	if n <= 3:
		return True
	if n % 2 == 0 or n % 3 == 0:
		return False
	i = 5
	while i * i <= n:
		if n % i == 0 or n % (i + 2) == 0:
			return False
		i = i + 6
	return True
for i in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 == 1:
		print('Ashishgup')
	elif math.log(n, 2) - int(math.log(n, 2)) == 0:
		print('FastestFinger')
	elif n // 2 % 2 == 0:
		print('Ashishgup')
	else:
		temp = n // 2
		if isPrime(temp):
			print('FastestFinger')
		else:
			print('Ashishgup')


t = int(input())
step = []
for i in range(2, 30):
	step.append(2 ** i)
for _ in range(t):
	n = int(input())
	if n % 2 == 1:
		if n != 1:
			print('Ashishgup')
		else:
			print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 == 0 and n % 4 != 0:
		N = 0
		d = 3
		n //= 2
		while d <= n ** 0.5 + 3:
			if n % d == 0:
				N += 1
				n //= d
			else:
				d += 2
		if n != 1:
			N += 1
		if N >= 2:
			print('Ashishgup')
		else:
			print('FastestFinger')
	elif step.count(n) == 0:
		print('Ashishgup')
	else:
		print('FastestFinger')


import math
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 == 1:
		print('Ashishgup')
	else:
		x = math.log2(n)
		if x.is_integer():
			print('FastestFinger')
		elif n % 4 == 0:
			print('Ashishgup')
		else:
			for i in range(2, int(math.sqrt(n // 2)) + 1):
				if n // 2 % i == 0:
					print('Ashishgup')
					break
			else:
				print('FastestFinger')


T = int(input())
for _ in range(T):
	N = int(input())
	if N == 1:
		win = False
	elif N == 2:
		win = True
	elif N % 2 == 1:
		win = True
	elif N % 4 == 0:
		while N % 2 == 0:
			N //= 2
		win = N > 1
	else:
		win = False
		for i in range(3, N // 2 + 1, 2):
			if i * i > N // 2:
				break
			if N // 2 % i == 0:
				win = True
				break
	print('Ashishgup' if win else 'FastestFinger')


t = int(input())
for _ in range(t):
	n = int(input())
	if n % 2 != 0:
		if n != 1:
			print('Ashishgup')
			continue
		else:
			print('FastestFinger')
			continue
	num = n
	multiples = []
	i = 2
	while n % i == 0:
		n = n // 2
	for i in range(3, int(n ** 0.5) + 1, 2):
		while n % i == 0:
			n = n // i
			multiples.append(i)
	if n != 1:
		multiples.append(n)
	ct = 0
	i = 0
	if len(multiples) >= 1:
		if len(multiples) == 1 and num // multiples[0] == 2:
			print('FastestFinger')
		else:
			print('Ashishgup')
	elif num != 2:
		print('FastestFinger')
	else:
		print('Ashishgup')


import sys, io, os, time
from collections import defaultdict
from collections import OrderedDict
from collections import deque
from itertools import combinations
from itertools import permutations
import bisect, math, heapq
alphabet = 'abcdefghijklmnopqrstuvwxyz'
input = sys.stdin.readline

def qw(n):
	if n == 2:
		return True
	if n % 2 == 0 or n <= 1:
		return False
	sqr = int(math.sqrt(n)) + 1
	for divisor in range(3, sqr, 2):
		if n % divisor == 0:
			return False
	return True

def solve():
	n = int(input())
	q = n
	if n == 1:
		print('FastestFinger')
	elif n % 2 != 0 or n == 2:
		print('Ashishgup')
	else:
		while q % 2 == 0:
			q = q // 2
		if q == 1:
			print('FastestFinger')
		elif n // q > 2 or not qw(q):
			print('Ashishgup')
		else:
			print('FastestFinger')

def main():
	t = int(input())
	for tt in range(t):
		solve()
main()


import math

def primeFactors(n):
	arr = []
	while n % 2 == 0:
		n = n // 2
		arr.append(2)
	for i in range(3, int(math.sqrt(n)) + 1, 2):
		while n % i == 0:
			arr.append(i)
			n = n // i
	if n > 2:
		arr.append(n)
	return arr

def main():
	t = int(input())
	for i in range(t):
		solve()

def solve():
	n = int(input())
	if n == 1:
		print('FastestFinger')
		return
	if n == 2:
		print('Ashishgup')
		return
	if n % 2 == 1:
		print('Ashishgup')
		return
	factors = primeFactors(n)
	odds = [i for i in factors if i % 2 == 1 and i > 1]
	twos = factors.count(2)
	if len(odds) == 0:
		print('FastestFinger')
		return
	if twos == 1:
		if len(odds) == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')
	else:
		print('Ashishgup')
main()


import math

def findOddDivisor(n):
	temp = dict()
	temp['even'] = 0
	temp['odd'] = 0
	while n % 2 == 0:
		n /= 2
		temp['even'] += 1
	if n == 1:
		return temp
	for i in range(3, int(math.sqrt(n)) + 1, 2):
		while n % i == 0:
			temp['odd'] += 1
			n /= i
	if n > 1:
		temp['odd'] += 1
	return temp
t = int(input())
for _ in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	if n == 2:
		print('Ashishgup')
		continue
	if n % 2 == 1:
		print('Ashishgup')
		continue
	if n <= 4:
		print('FastestFinger')
		continue
	temp = findOddDivisor(n)
	if temp['odd'] == 0:
		print('FastestFinger')
	elif temp['even'] == 1:
		if temp['odd'] == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')
	else:
		print('Ashishgup')


import math

def primeFactors(n):
	arr = []
	while n % 2 == 0:
		(arr.append(2),)
		n = n / 2
	for i in range(3, int(math.sqrt(n)) + 1, 2):
		while n % i == 0:
			(arr.append(int(i)),)
			n = n / i
	if n > 2:
		arr.append(int(n))
	return arr
t = int(input())
for _ in range(t):
	n = int(input())
	a = 'Ashishgup'
	b = 'FastestFinger'
	if n == 1:
		print(b)
	elif n % 2 == 1:
		print(a)
	else:
		l = primeFactors(n)
		p = l.count(2)
		q = len(l) - p
		if n == 2:
			print(a)
		elif p == 1:
			if q > 1:
				print(a)
			else:
				print(b)
		elif q > 0:
			print(a)
		else:
			print(b)


def isprime(n):
	if n < 2:
		return False
	x = 2
	while x * x <= n:
		if n % x == 0:
			return False
		x += 1
	return True
t = int(input())
while t:
	t = t - 1
	n = int(input())
	a = 'Ashishgup'
	f = 'FastestFinger'
	hi2 = 0
	setbit = 0
	if n == 1:
		print(f)
	elif n % 2 == 1 and n != 1:
		print(a)
	else:
		for i in range(1, 32):
			if n % (1 << i) == 0:
				hi2 = hi2 + 1
		for i in range(32):
			if n & 1 << i:
				setbit = setbit + 1
		if setbit == 1 and n != 2:
			print(f)
		if n == 2:
			print(a)
		if setbit > 1 and 2 ** hi2 > 2:
			print(a)
		if setbit > 1 and 2 ** hi2 == 2:
			if isprime(n // 2 ** hi2):
				print(f)
			else:
				print(a)


from sys import stdin
from math import sqrt
for case in range(int(stdin.readline())):
	n = int(stdin.readline())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 == 1:
		print('Ashishgup')
	elif n % 4 == 0:
		p = 1
		while p < n:
			p *= 2
		if n == p:
			print('FastestFinger')
		else:
			print('Ashishgup')
	else:
		factors = 0
		for x in range(2, int(sqrt(n)) + 1):
			if n % x == 0:
				if x % 2 == 1:
					factors += 1
				if n // x % 2 == 1:
					factors += 1
		if factors > 1:
			print('Ashishgup')
		else:
			print('FastestFinger')


t = int(input())
f = 'FastestFinger'
a = 'Ashishgup'
for _ in range(t):
	n = int(input())
	x = 0
	while n % 2 == 0:
		n //= 2
		x += 1
	if n == 1:
		if x != 1:
			print(f)
		else:
			print(a)
		continue
	p1 = 0
	for p in range(3, int(n ** (1 / 2) + 0.1) + 1, 2):
		if n % p == 0:
			n //= p
			p1 = p
			break
	if (n == 1 or p1 == 0) and x == 1:
		print(f)
	else:
		print(a)


import math

def checkprime(n):
	if n == 2:
		return True
	if n % 2 == 0 or n <= 1:
		return False
	sqr = int(math.sqrt(n)) + 1
	for d in range(3, sqr, 2):
		if n % d == 0:
			return False
	return True
pows2 = {2 ** i for i in range(2, 31)}
for _ in range(int(input())):
	n = int(input())
	if n & 1 and n != 1 or n == 2:
		print('Ashishgup')
	elif n == 1:
		print('FastestFinger')
	elif n % 2 == 0:
		if n in pows2:
			print('FastestFinger')
		elif n % 4 == 0:
			print('Ashishgup')
		elif checkprime(n // 2):
			print('FastestFinger')
		else:
			print('Ashishgup')


import math

def factors(n):
	l = []
	while n % 2 == 0:
		l.append(2)
		n = n / 2
	for i in range(3, int(math.sqrt(n)) + 1, 2):
		while n % i == 0:
			l.append(i)
			n = int(n / i)
	if n > 2:
		l.append(int(n))
	return l

def solve(n):
	if n == 1:
		return 0
	if n == 2 or n == 3 or n == 5 or (n == 7):
		return 1
	if n % 2 != 0:
		return 1
	fact = factors(n)
	o = 0
	for i in fact:
		if i % 2 != 0:
			o += 1
	if n // 2 % 2 != 0 and o <= 1:
		return 0
	i = 1
	while i < n:
		i *= 2
	if i == n:
		return 0
	return 1
t = int(input())
for we in range(t):
	n = int(input())
	if solve(n) == 1:
		print('Ashishgup')
	else:
		print('FastestFinger')


import sys
input = sys.stdin.readline
from collections import deque, defaultdict as dft

def ml():
	return list(map(int, input().split()))

def mp():
	return map(int, input().split())

def solve():
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2:
		print('Ashishgup')
	else:
		pro = 1
		num = n
		while num % 2 == 0:
			num = num // 2
			pro *= 2
		if pro > 2:
			t = n // pro
			if t > 1:
				print('Ashishgup')
			else:
				print('FastestFinger')
		else:
			t = n // pro
			mile = 0
			for i in range(3, int(t ** 0.5) + 1, 2):
				if t % i == 0:
					mile = 1
					break
			if mile:
				print('Ashishgup')
			else:
				print('FastestFinger')
t = int(input())
for _ in range(t):
	solve()


import math

def solve():
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 == 1:
		print('Ashishgup')
	else:
		odd = n
		while odd % 2 == 0:
			odd //= 2
		smallest_odd_divisor = odd
		for i in range(3, int(math.sqrt(odd)) + 1, 2):
			if odd % i == 0:
				smallest_odd_divisor = i
		if smallest_odd_divisor == 1 or n // smallest_odd_divisor < 4:
			print('FastestFinger')
		else:
			print('Ashishgup')
t = int(input())
for _ in range(t):
	solve()


import math

def primeFactors(n):
	(co, ce) = (0, 0)
	while n % 2 == 0:
		ce += 1
		n = n / 2
	for i in range(3, int(math.sqrt(n)) + 1, 2):
		while n % i == 0:
			co += 1
			n = n / i
	if n > 2:
		co += 1
	return (co, ce)
for z in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 == 1:
		print('Ashishgup')
	else:
		(x, y) = primeFactors(n)
		if y > 1 and x != 0:
			print('Ashishgup')
		elif x > 1:
			print('Ashishgup')
		else:
			print('FastestFinger')


import sys

def solve(n):
	pow2 = []
	for i in range(1, 30):
		pow2.append(1 << i)
	if n == 1:
		return 'FastestFinger'
	elif n == 2:
		return 'Ashishgup'
	elif n % 2 == 0:
		if n in pow2:
			return 'FastestFinger'
		elif n // 2 % 2 == 1:
			oddFactors = 0
			n //= 2
			for i in range(3, int(n ** 0.5) + 2, 2):
				if n % i == 0:
					oddFactors += 1
			if oddFactors >= 1:
				return 'Ashishgup'
			else:
				return 'FastestFinger'
	return 'Ashishgup'
caseCount = int(next(sys.stdin))
ans = ''
for i in range(caseCount):
	ans += solve(int(next(sys.stdin))) + '\n'
print(ans)


import sys, math, os
from io import BytesIO, IOBase
from collections import defaultdict as dd, deque, Counter

def data():
	return sys.stdin.buffer.readline().strip()

def mdata():
	return list(map(int, data().split()))

def outl(var):
	sys.stdout.write('\n'.join(map(str, var)) + '\n')

def out(var):
	sys.stdout.write(str(var) + '\n')
mod = 998244353
for t in range(int(data())):
	n = int(data())
	k = n & -n
	if k == n and n != 2:
		out('FastestFinger')
	elif n % 2 == 1 or k > 2 or n == 2:
		out('Ashishgup')
	else:
		cnt = 0
		n //= 2
		for i in range(3, int(n ** 0.5) + 1):
			if n % i == 0:
				cnt = 1
				break
		if cnt == 1:
			out('Ashishgup')
		else:
			out('FastestFinger')


import math

def factorize(n):
	ans = []
	while n % 2 == 0:
		ans.append(2)
		n = n // 2
	for i in range(3, int(math.sqrt(n)) + 1, 2):
		while n % i == 0:
			ans.append(i)
			n = n // i
	if n > 2:
		ans.append(n)
	return ans
for i in range(int(input())):
	n = int(input())
	fact = factorize(n)
	turn = False
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif 2 in fact and any([x % 2 == 1 for x in fact]):
		if fact.count(2) > 1 or len([x for x in fact if x % 2 == 1]) > 1:
			print('Ashishgup')
		else:
			print('FastestFinger')
	elif n % 2 != 0:
		print('Ashishgup')
	else:
		print('FastestFinger')


from math import *
x = 50000

def s(n):
	global x
	for i in range(2, min(n, x)):
		if n % i == 0:
			return 0
	return 1
for i in range(int(input())):
	n = int(input())
	f = 0
	if n == 1:
		f = 1
	if n > 2 and n % 2 == 0:
		if n & n - 1 == 0:
			f = 1
		elif n % 4 != 0 and s(n // 2):
			f = 1
	if n == 1:
		print('FastestFinger')
	elif f == 0:
		print('Ashishgup')
	else:
		print('FastestFinger')


def power_of_two_checker(x):
	while x != 1:
		if x % 2 == 1:
			return False
		x = x // 2
	return True
for _ in range(0, int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 == 1:
		print('Ashishgup')
	elif power_of_two_checker(n) == True:
		print('FastestFinger')
	elif n % 2 == 0 and n // 2 % 2 == 1:
		temp = n // 2
		i = 3
		while i * i <= temp:
			if n % i == 0:
				print('Ashishgup')
				break
			i += 2
		else:
			print('FastestFinger')
	else:
		print('Ashishgup')


import math
for tc in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 != 0 or n == 2:
		print('Ashishgup')
	elif n % 2 == 0:
		div = []
		for i in range(3, math.floor(math.sqrt(n) + 1)):
			if n % i == 0:
				div.append(i)
				if n / i != i:
					div.append(n // i)
		for i in div:
			if n / i % 2 == 0 and i % 2 != 0:
				print('Ashishgup')
				break
		else:
			print('FastestFinger')


def abc(n, k):
	if n == 1:
		return not k % 2
	if n % 2:
		return k % 2
	ans = abc(n - 1, k + 1)
	for i in range(2, int(pow(n, 0.5)) + 1):
		if not n % i:
			x = i
			y = n // i
			if x % 2:
				ans = ans | abc(n // x, k + 1)
			if y % 2:
				ans = ans | abc(x, k + 1)
	return ans
t = int(input())
for _ in range(t):
	n = int(input())
	if abc(n, 1):
		print('Ashishgup')
	else:
		print('FastestFinger')


test_cases = int(input())

def isPrime(n):
	while n % 2 == 0:
		n /= 2
	if n <= 1:
		return False
	if n <= 3:
		return True
	if n % 2 == 0 or n % 3 == 0:
		return False
	i = 5
	while i * i <= n:
		if n % i == 0 or n % (i + 2) == 0:
			return False
		i = i + 6
	return True

def checkAll2(num):
	while num % 2 == 0:
		num /= 2
	return num != 1
while test_cases > 0:
	num = int(input())
	if num == 1:
		print('FastestFinger')
	elif num == 2:
		print('Ashishgup')
	elif num % 2 != 0:
		print('Ashishgup')
	elif not checkAll2(num):
		print('FastestFinger')
	elif num % 4 == 0 and checkAll2(num):
		print('Ashishgup')
	elif num % 2 == 0 and (not isPrime(num)):
		print('Ashishgup')
	else:
		print('FastestFinger')
	test_cases -= 1


import sys, math
_INPUT_LINES = sys.stdin.read().splitlines()
input = iter(_INPUT_LINES).__next__

def if2pow(n):
	for i in range(1, 33):
		if 2 ** i == n:
			return True
		if 2 ** i > n:
			return False
	return False

def isPrim(n):
	p = int(math.sqrt(n)) + 1
	ans = True
	for i in range(2, p + 1):
		if n % i == 0:
			ans = False
			break
	return ans
isPrime = [True] * 100001
isPrime[0] = isPrime[1] = False
b = int(math.sqrt(10001) + 2)
for i in range(2, b):
	if isPrime[i]:
		for j in range(i * i, 100001, i):
			isPrime[j] = False
tc = int(input())
for zzz in range(tc):
	n = int(input())
	ans = ''
	if n == 1:
		ans = 'FastestFinger'
	elif n % 2 == 1 or n == 2:
		ans = 'Ashishgup'
	elif if2pow(n):
		ans = 'FastestFinger'
	else:
		n //= 2
		if isPrim(n):
			ans = 'FastestFinger'
		else:
			ans = 'Ashishgup'
	print(ans)


import math
from io import BytesIO, IOBase
import sys
import os
FIO = True

def I():
	return input()

def Iint():
	return int(input())

def Ilist():
	return list(map(int, input().split()))

def Imap():
	return map(int, input().split())

def Plist(li, s=' '):
	print(s.join(map(str, li)))

def is_prime(n):
	if n < 5 or n & 1 == 0 or n % 3 == 0:
		return 2 <= n <= 3
	s = (n - 1 & 1 - n).bit_length() - 1
	d = n >> s
	for a in [2, 325, 9375, 28178, 450775, 9780504, 1795265022]:
		p = pow(a, d, n)
		if p == 1 or p == n - 1 or a % n == 0:
			continue
		for _ in range(s):
			p = p * p % n
			if p == n - 1:
				break
		else:
			return False
	return True

def main():
	F = 'FastestFinger'
	A = 'Ashishgup'
	t = Iint()
	for _ in range(t):
		n = Iint()
		if n == 1:
			print(F)
		elif n % 2 == 1:
			print(A)
		elif n == 2:
			print(A)
		else:
			pow2 = 0
			while n % 2 == 0:
				n = n >> 1
				pow2 += 1
			if n == 1:
				print(F)
			elif pow2 >= 2:
				print(A)
			elif pow2 == 1:
				if is_prime(n):
					print(F)
				else:
					print(A)
if not FIO:
	if __name__ == '__main__':
		main()
		exit()
BUFSIZE = 8192

class FastIO(IOBase):
	newlines = 0

	def __init__(self, file):
		self._fd = file.fileno()
		self.buffer = BytesIO()
		self.writable = 'x' in file.mode or 'r' not in file.mode
		self.write = self.buffer.write if self.writable else None

	def read(self):
		while True:
			b = os.read(self._fd, max(os.fstat(self._fd).st_size, BUFSIZE))
			if not b:
				break
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines = 0
		return self.buffer.read()

	def readline(self):
		while self.newlines == 0:
			b = os.read(self._fd, max(os.fstat(self._fd).st_size, BUFSIZE))
			self.newlines = b.count(b'\n') + (not b)
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines -= 1
		return self.buffer.readline()

	def flush(self):
		if self.writable:
			os.write(self._fd, self.buffer.getvalue())
			(self.buffer.truncate(0), self.buffer.seek(0))

class IOWrapper(IOBase):

	def __init__(self, file):
		self.buffer = FastIO(file)
		self.flush = self.buffer.flush
		self.writable = self.buffer.writable
		self.write = lambda s: self.buffer.write(s.encode('ascii'))
		self.read = lambda : self.buffer.read().decode('ascii')
		self.readline = lambda : self.buffer.readline().decode('ascii')
(sys.stdin, sys.stdout) = (IOWrapper(sys.stdin), IOWrapper(sys.stdout))

def input():
	return sys.stdin.readline().rstrip('\r\n')
main()


t = int(input())
while t:
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2 or n & 1:
		print('Ashishgup')
	else:
		i = 3
		flag = 0
		while i * i <= n:
			if n % i == 0 and (i % 2 == 1 or n / i % 2 == 1):
				flag = 1
				break
			i += 1
		if flag:
			print('Ashishgup')
		else:
			print('FastestFinger')
	t -= 1


from math import sqrt
t = int(input())
for q in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2 or n % 2:
		print('Ashishgup')
	else:
		ans = 'FastestFinger'
		for d in range(2, int(sqrt(n)) + 1):
			if n % d == 0:
				d2 = n // d
				if d % 2 and d2 % 2 == 0 and (d2 > 2) or (d2 % 2 and d % 2 == 0 and (d > 2)):
					ans = 'Ashishgup'
					break
		print(ans)


def isprime(n):
	i = 2
	while i * i <= n:
		if n % i == 0:
			return 0
		i += 1
	return 1
t = int(input())
while t > 0:
	t -= 1
	n = int(input())
	s1 = 'Ashishgup'
	s2 = 'FastestFinger'
	if n == 1:
		print(s2)
	elif n == 2:
		print(s1)
	elif n > 2 and n % 2 == 1:
		print(s1)
	elif int(n & n - 1) == 0:
		print(s2)
	elif n % 4 == 0:
		print(s1)
	elif isprime(int(n / 2)):
		print(s2)
	else:
		print(s1)


from functools import reduce
import sys
import io, os

def factors(n):
	x = set(reduce(list.__add__, ([i, n // i] for i in range(1, int(n ** 0.5) + 1) if n % i == 0)))
	return list(x)
l1 = []
for i in range(1, 30):
	l1.append(1 << i)
t = int(input())
for i in range(t):
	n = int(input())
	if n == 2:
		print('Ashishgup')
	elif n == 1:
		print('FastestFinger')
	elif n & 1:
		print('Ashishgup')
	elif n in l1:
		print('FastestFinger')
	else:
		(ok1, ok2, ok3) = (False, False, False)
		l = factors(n)
		odd = 0
		for i in l:
			if i % 2 == 1 and i != 1:
				if n // i in l1:
					if n // i != 2:
						ok1 = True
					else:
						ok3 = True
				else:
					ok2 = True
		if ok1 == True or ok2 == True:
			print('Ashishgup')
		elif ok3 == True:
			print('FastestFinger')


a = 'Ashishgup'
b = 'FastestFinger'
for _ in range(int(input())):
	n = int(input())
	c = n
	if n == 1:
		print(b)
	elif n == 2:
		print(a)
	elif n % 2 == 1:
		print(a)
	elif n & n - 1 == 0:
		print(b)
	else:
		ev = 0
		od = 1
		while n % 2 == 0:
			ev += 1
			n = n // 2
		if ev == 1:
			for i in range(3, int(c ** 0.5)):
				if n % i == 0:
					od = 2
					break
		if ev == 1 and od == 1:
			print(b)
		else:
			print(a)


def divisor(n):
	for i in range(3, int(n ** 0.5) + 1):
		if n % i == 0:
			if i % 2 == 1 or n // i % 2 == 1:
				return 'Ashishgup'
	return 'FastestFinger'
for i in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 != 0:
		print('Ashishgup')
	elif n % 2 == 0:
		print(divisor(n))


import sys
input = sys.stdin.readline
ipnl = lambda n: [int(input()) for _ in range(n)]
inp = lambda : int(input())
ip = lambda : [int(w) for w in input().split()]

def pfact(num):
	from math import sqrt
	dt = {}
	while num % 2 == 0:
		dt[2] = dt.get(2, 0) + 1
		num //= 2
	for i in range(3, int(sqrt(num)) + 1, 2):
		while num % i == 0:
			dt[i] = dt.get(i, 0) + 1
			num //= i
	if num > 2:
		dt[num] = dt.get(num, 0) + 1
	return dt
for _ in range(inp()):
	n = inp()
	if n == 1:
		print('FastestFinger')
	elif n == 2 or n % 2:
		print('Ashishgup')
	else:
		c = 0
		while n % 2 == 0:
			n //= 2
			c += 1
		if n != 1:
			pf = pfact(n)
		else:
			pf = []
		if n == 1:
			print('FastestFinger')
		elif c > 1 or sum(list(pf.values())) >= 2:
			print('Ashishgup')
		else:
			print('FastestFinger')


import math

def div_odd(n):
	if n == 2:
		return True
	for i in range(3, int(math.sqrt(n)) + 1):
		if n % i == 0 and (i % 2 == 1 or n // i % 2 == 1):
			return True
	return False

def f():
	t = int(input())
	for _ in range(t):
		n = int(input())
		if n == 1:
			print('FastestFinger')
		elif n % 2 == 1:
			print('Ashishgup')
		elif div_odd(n):
			print('Ashishgup')
		else:
			print('FastestFinger')
f()


for t in range(int(input())):
	n = int(input())
	d = 0
	r = n
	p = 1
	while r % 2 == 0:
		d += 1
		r = r // 2
	if d == 1 and r > 1:
		c = 3
		while c * c <= r:
			if r % c == 0:
				p = 0
				break
			c += 2
	if n == 1 or (d > 1 and r == 1) or (d == 1 and r > 1 and (p == 1)):
		print('FastestFinger')
	else:
		print('Ashishgup')


from __future__ import division, print_function
from fractions import Fraction
import sys
import os
from io import BytesIO, IOBase
import bisect
from heapq import *
from math import *
from collections import deque
from collections import Counter as counter
from itertools import combinations as comb
from itertools import permutations as permutate
from bisect import bisect_left as bl
from bisect import bisect_right as br
from bisect import bisect
BUFSIZE = 8192

class FastIO(IOBase):
	newlines = 0

	def __init__(self, file):
		self._fd = file.fileno()
		self.buffer = BytesIO()
		self.writable = 'x' in file.mode or 'r' not in file.mode
		self.write = self.buffer.write if self.writable else None

	def read(self):
		while True:
			b = os.read(self._fd, max(os.fstat(self._fd).st_size, BUFSIZE))
			if not b:
				break
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines = 0
		return self.buffer.read()

	def readline(self):
		while self.newlines == 0:
			b = os.read(self._fd, max(os.fstat(self._fd).st_size, BUFSIZE))
			self.newlines = b.count(b'\n') + (not b)
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines -= 1
		return self.buffer.readline()

	def flush(self):
		if self.writable:
			os.write(self._fd, self.buffer.getvalue())
			(self.buffer.truncate(0), self.buffer.seek(0))

class IOWrapper(IOBase):

	def __init__(self, file):
		self.buffer = FastIO(file)
		self.flush = self.buffer.flush
		self.writable = self.buffer.writable
		self.write = lambda s: self.buffer.write(s.encode('ascii'))
		self.read = lambda : self.buffer.read().decode('ascii')
		self.readline = lambda : self.buffer.readline().decode('ascii')

def print(*args, **kwargs):
	(sep, file) = (kwargs.pop('sep', ' '), kwargs.pop('file', sys.stdout))
	at_start = True
	for x in args:
		if not at_start:
			file.write(sep)
		file.write(str(x))
		at_start = False
	file.write(kwargs.pop('end', '\n'))
	if kwargs.pop('flush', False):
		file.flush()
if sys.version_info[0] < 3:
	(sys.stdin, sys.stdout) = (FastIO(sys.stdin), FastIO(sys.stdout))
else:
	(sys.stdin, sys.stdout) = (IOWrapper(sys.stdin), IOWrapper(sys.stdout))
mod = 1000000007

def inp():
	return sys.stdin.readline().rstrip('\r\n')

def out(var):
	sys.stdout.write(str(var))

def lis():
	return list(map(int, inp().split()))

def stringlis():
	return list(map(str, inp().split()))

def sep():
	return map(int, inp().split())

def strsep():
	return map(str, inp().split())

def graph(vertex):
	return [[] for i in range(0, vertex + 1)]

def zerolist(n):
	return [0] * n

def nextline():
	out('\n')

def testcase(t):
	for p in range(t):
		solve()

def printlist(a):
	for p in range(0, len(a)):
		out(str(a[p]) + ' ')

def lcm(a, b):
	return a * b // gcd(a, b)

def power(a, b):
	ans = 1
	while b > 0:
		if b % 2 == 1:
			ans *= a
		a *= a
		b //= 2
	return ans

def ncr(n, r):
	return factorial(n) // (factorial(r) * factorial(max(n - r, 1)))

def isPrime(n):
	if n <= 1:
		return False
	if n <= 3:
		return True
	if n % 2 == 0 or n % 3 == 0:
		return False
	i = 5
	while i * i <= n:
		if n % i == 0 or n % (i + 2) == 0:
			return False
		i = i + 6
	return True

def solve():
	n = int(inp())
	cnt = 0
	x = 'Ashishgup'
	y = 'FastestFinger'
	if n == 1:
		print(y)
		return
	if n % 2 == 1:
		print(x)
		return
	if n == 2:
		print(x)
		return
	xx = 0
	while n % 2 ** (xx + 1) == 0:
		xx += 1
	if xx == 1:
		if isPrime(n // 2):
			print(y)
		else:
			print(x)
	elif n == 2 ** xx:
		print(y)
	else:
		print(x)
testcase(int(inp()))


import math

def is_prime(n):
	for i in range(2, math.ceil(math.sqrt(n)) + 1):
		if n % i == 0:
			return False
	return True

def number_game():
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 == 0 and n != 2:
		ok = True
		u = n
		while u > 1:
			if u % 2 == 1:
				ok = False
				break
			u = u // 2
		if ok:
			print('FastestFinger')
		else:
			n = n // 2
			if n % 2 == 0:
				print('Ashishgup')
			else:
				prime = is_prime(n)
				if prime:
					print('FastestFinger')
				else:
					print('Ashishgup')
	else:
		print('Ashishgup')
t = int(input())
for _ in range(t):
	number_game()


import math

def primeFactors(n):
	while n % 2 == 0:
		pf.append(2)
		n = int(n / 2)
	for i in range(3, int(math.sqrt(n)) + 1, 2):
		while n % i == 0:
			pf.append(i)
			n = int(n / i)
	if n > 2:
		pf.append(n)
t = int(input())
for tt in range(0, t):
	pf = []
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	if n == 2:
		print('Ashishgup')
		continue
	primeFactors(n)
	count2 = pf.count(2)
	counto = len(pf) - count2
	if counto == 0:
		print('FastestFinger')
	elif count2 == 0:
		print('Ashishgup')
	elif count2 == 1:
		if counto == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')
	else:
		print('Ashishgup')


import math
from decimal import Decimal, getcontext
getcontext().prec = 6
from functools import reduce

def primecheck(n):
	i = 2
	while i <= int(math.sqrt(n)):
		if n % i == 0:
			return False
		i += 1
	return True

def solve(n):
	if n == 1:
		return 'FastestFinger'
	elif n == 2:
		return 'Ashishgup'
	elif Decimal(math.log(n)) / Decimal(math.log(2)) % 1 == 0 and n > 2:
		return 'FastestFinger'
	elif n % 2 != 0:
		return 'Ashishgup'
	elif n % 2 == 0 and primecheck(n // 2):
		return 'FastestFinger'
	return 'Ashishgup'
ans = []
for _ in range(int(input())):
	n = int(input())
	ans.append(solve(n))
print(*ans)


for pratyush in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2 or n % 2:
		print('Ashishgup')
	else:
		a = n
		while a % 2 == 0:
			a //= 2
		if n != 2 and a == 1:
			print('FastestFinger')
		elif n // a == 2:
			for x in range(3, int(a ** 0.5) + 1, 2):
				if a % x == 0:
					print('Ashishgup')
					break
			else:
				print('FastestFinger')
		else:
			print('Ashishgup')


def is_prime_odd(n):
	for i in range(3, min(n, 50000), 2):
		if n % i == 0:
			return False
	return True

def get_winner(n):
	players = {0: 'Ashishgup', 1: 'FastestFinger'}
	first_player_lose = n == 1
	if n > 2 and n % 2 == 0:
		if n & n - 1 == 0:
			first_player_lose = 1
		elif n % 4 != 0 and is_prime_odd(n // 2):
			first_player_lose = 1
	return players[first_player_lose]
results = []
for _ in range(int(input())):
	results.append(get_winner(int(input())))
print('\n'.join(results))


def is_prime(n):
	if n == 1:
		return False
	i = 2
	while i * i <= n:
		if n % i == 0:
			return False
		i += 1
	return True
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 == 1:
		print('Ashishgup')
	else:
		n = n / 2
		if n % 2 == 1:
			if is_prime(n):
				print('FastestFinger')
			else:
				print('Ashishgup')
		else:
			while n % 2 == 0:
				n = n / 2
			if n == 1:
				print('FastestFinger')
			else:
				print('Ashishgup')


def isPrime(n):
	d = 3
	while d * d <= n and n % d != 0:
		d += 2
	return d * d > n
for i in range(int(input())):
	a = int(input())
	b = ['Ashishgup', 'FastestFinger']
	if a == 1:
		print(b[1])
	elif a == 2 or a % 2 == 1:
		print(b[0])
	else:
		h = a
		while h % 2 == 0:
			h /= 2
		if h == 1:
			print(b[1])
		elif a % 4 == 0:
			print(b[0])
		elif isPrime(h):
			print(b[1])
		else:
			print(b[0])


import math

def primeFactors(n):
	ans = []
	while n % 2 == 0:
		ans.append(2)
		n = n / 2
	for i in range(3, int(math.sqrt(n)) + 1, 2):
		while n % i == 0:
			ans.append(i)
			n = n / i
	if n > 2:
		ans.append(n)
	return ans
test_cases = int(input())
for z in range(test_cases):
	n = int(input())
	two = 0
	odd = 0
	if n == 1:
		print('FastestFinger')
	elif n % 2 != 0 or n == 2:
		print('Ashishgup')
	elif n % 2 == 0 and n != 2:
		factors = primeFactors(n)
		for i in factors:
			if i == 2:
				two += 1
			else:
				odd += 1
		if two >= 2 and odd == 0:
			print('FastestFinger')
		elif two >= 2 and odd > 0:
			print('Ashishgup')
		elif two == 1 and odd > 1:
			print('Ashishgup')
		elif two == 1 and odd == 1:
			print('FastestFinger')


import sys
input = sys.stdin.readline
from math import ceil, floor, factorial

def swaparr(arr, a, b):
	temp = arr[a]
	arr[a] = arr[b]
	arr[b] = temp

def gcd(a, b):
	if a == 0:
		return b
	return gcd(b % a, a)

def nCr(n, k):
	if k > n - k:
		k = n - k
	res = 1
	for i in range(k):
		res = res * (n - i)
		res = res / (i + 1)
	return int(res)

def upper_bound(a, x, lo=0):
	hi = len(a)
	while lo < hi:
		mid = (lo + hi) // 2
		if a[mid] < x:
			lo = mid + 1
		else:
			hi = mid
	return lo

def primefs(n):
	primes = {}
	while n % 2 == 0 and n > 0:
		primes[2] = primes.get(2, 0) + 1
		n = n // 2
	for i in range(3, int(n ** 0.5) + 2, 2):
		while n % i == 0 and n > 0:
			primes[i] = primes.get(i, 0) + 1
			n = n // i
	if n > 2:
		primes[n] = primes.get(n, 0) + 1
	return primes

def power(x, y, p):
	res = 1
	x = x % p
	if x == 0:
		return 0
	while y > 0:
		if y & 1 == 1:
			res = res * x % p
		y = y >> 1
		x = x * x % p
	return res

def swap(a, b):
	temp = a
	a = b
	b = temp
	return (a, b)

def find(x, link):
	p = x
	while p != link[p]:
		p = link[p]
	while x != p:
		nex = link[x]
		link[x] = p
		x = nex
	return p

def union(x, y, link, size):
	x = find(x, link)
	y = find(y, link)
	if size[x] < size[y]:
		(x, y) = swap(x, y)
	if x != y:
		size[x] += size[y]
		link[y] = x

def sieve(n):
	prime = [True for i in range(n + 1)]
	p = 2
	while p * p <= n:
		if prime[p] == True:
			for i in range(p * p, n + 1, p):
				prime[i] = False
		p += 1
	return prime
MAXN = int(1000000.0 + 5)

def spf_sieve():
	spf[1] = 1
	for i in range(2, MAXN):
		spf[i] = i
	for i in range(4, MAXN, 2):
		spf[i] = 2
	for i in range(3, ceil(MAXN ** 0.5), 2):
		if spf[i] == i:
			for j in range(i * i, MAXN, i):
				if spf[j] == j:
					spf[j] = i

def factoriazation(x):
	ret = {}
	while x != 1:
		ret[spf[x]] = ret.get(spf[x], 0) + 1
		x = x // spf[x]
	return ret

def int_array():
	return list(map(int, input().strip().split()))

def str_array():
	return input().strip().split()
MOD = int(1000000000.0) + 7
CMOD = 998244353
INF = float('inf')
NINF = -float('inf')
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	if n & 1 or n == 2:
		print('Ashishgup')
		continue
	else:
		i = 2
		e = o = 0
		while i * i <= n:
			while n % i == 0:
				if i % 2 == 0:
					e += 1
				else:
					o += 1
				n = n // i
			i += 1
		if n > 1:
			o += 1
		if e != 1 and o > 0 or (e == 1 and o > 1):
			print('Ashishgup')
		else:
			print('FastestFinger')


import math

def primenum(x):
	count = 0
	for i in range(2, int(math.floor(math.sqrt(x))) + 1):
		if x % i == 0:
			count = count + 1
	if count == 0:
		return True
	else:
		return False
t = int(input())
for i in range(t):
	n = int(input())
	x = int(math.log(n, 2))
	r = n // 2
	if n == 1:
		print('FastestFinger')
	elif n % 2 != 0 or n == 2:
		print('Ashishgup')
	elif 2 ** x == n:
		print('FastestFinger')
	elif n % 2 == 0 and r % 2 != 0 and (primenum(r) == True) and (r >= 3):
		print('FastestFinger')
	else:
		print('Ashishgup')


import math

def factorize(x):
	factors = []
	for i in range(2, int(math.sqrt(x) + 1)):
		while x % i == 0:
			if i & 1:
				factors.append(i)
			x //= i
	if x != 1:
		if x & 1:
			factors.append(x)
	return factors
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n & 1 or n == 2:
		print('Ashishgup')
	else:
		divs = factorize(n)
		steps = len(divs)
		dec = 1
		for x in divs:
			dec *= x
		if n / dec != 2 and steps != 0:
			print('Ashishgup')
		else:
			print('Ashishgup' if steps > 1 else 'FastestFinger')


import math

def primeFactors(n):
	l = []
	while n % 2 == 0:
		l.append(2)
		n = n // 2
	for i in range(3, int(math.sqrt(n)) + 1, 2):
		while n % i == 0:
			l.append(i)
			n = n // i
	if n > 2:
		l.append(n)
	return l
t = int(input())
while t > 0:
	n = int(input())
	z = math.log2(n)
	p = n // 2
	if n == 1:
		print('FastestFinger')
	elif n % 2 != 0:
		print('Ashishgup')
	elif n == 2:
		print('Ashishgup')
	elif z.is_integer():
		print('FastestFinger')
	elif p % 2 == 0:
		print('Ashishgup')
	else:
		q = primeFactors(p)
		z = len(q)
		if z == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')
	t -= 1


def prime(n):
	if n <= 1:
		return False
	if n <= 3:
		return True
	if n % 2 == 0 or n % 3 == 0:
		return False
	i = 5
	while i * i <= n:
		if n % i == 0 or n % (i + 2) == 0:
			return False
		i = i + 6
	return True
t = int(input())
while t:
	t -= 1
	n = int(input())
	a = 'Ashishgup'
	f = 'FastestFinger'
	if n == 1:
		print(f)
	elif n == 2 or n % 2 == 1:
		print(a)
	else:
		c = n
		i = 0
		while n % 2 == 0:
			n = n // 2
		if n == 1:
			print(f)
			continue
		else:
			res = c // n
			if res == 2:
				if prime(n):
					print(f)
				else:
					print(a)
			else:
				print(a)


import atexit
import io
import sys
import math
from collections import defaultdict, Counter
t = int(input())
for i in range(t):
	n = int(input())
	if n & 1 == 1:
		if n == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')
	else:
		c = 0
		c1 = 0
		while n % 2 == 0:
			n //= 2
			c1 += 1
		for j in range(3, int(math.sqrt(n)) + 1, 2):
			if n % j == 0:
				while n % j == 0:
					n //= j
					c += 1
		if n > 2:
			c += 1
		if c1 > 1:
			if c > 0:
				print('Ashishgup')
			else:
				print('FastestFinger')
		else:
			if c == 0:
				print('Ashishgup')
				continue
			if c > 1:
				print('Ashishgup')
			else:
				print('FastestFinger')


testCases = int(input())
for t in range(testCases):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2 or n % 2 != 0:
		print('Ashishgup')
	else:
		flag = 0
		while n % 2 == 0:
			n /= 2
			flag += 1
		count = 0
		if flag == 1:
			var = 0
			for d in range(3, int(n ** 0.5) + 1, 2):
				while n % d == 0:
					n /= d
					count += 1
					if count > 1:
						var = 1
						break
				if var == 1:
					break
			if n != 1:
				count += 1
				if count > 1:
					var = 1
			if var == 0:
				print('FastestFinger')
			else:
				print('Ashishgup')
		elif n == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')


def check(x):
	while x % 2 == 0:
		x //= 2
	if x == 1:
		return 1
	else:
		return 0
q = int(input())
for T in range(q):
	x = int(input())
	if x == 1:
		print('FastestFinger')
	elif x == 2:
		print('Ashishgup')
	elif x % 2 == 1:
		print('Ashishgup')
	elif check(x):
		print('FastestFinger')
	else:
		if x % 4 == 0:
			print('Ashishgup')
			continue
		x //= 2
		p = 1
		for i in range(2, min(x - 1, 40000)):
			if x % i == 0:
				p = 0
		if p == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')


import math
for _ in range(int(input())):
	n = int(input())
	k = bin(n)
	if n == 1:
		print('FastestFinger')
		continue
	if n == 2:
		print('Ashishgup')
		continue
	if n % 2 != 0:
		print('Ashishgup')
		continue
	if k.count('1') == 1:
		print('FastestFinger')
		continue
	if n % 4 == 0:
		print('Ashishgup')
		continue
	k = n // 2
	flag = True
	g = int(math.sqrt(k))
	for i in range(2, g + 1):
		if k % i == 0:
			flag = False
			break
	if flag:
		print('FastestFinger')
	else:
		print('Ashishgup')


def is_prime(n):
	for i in range(2, n):
		if i * i > n:
			break
		if n % i == 0:
			return False
	return True

def solve():
	n = int(input())
	v = 2
	pow2s = set()
	players = ['Ashishgup', 'FastestFinger']
	for i in range(2, n):
		v *= 2
		if v > n:
			break
		pow2s.add(v)
	if n == 1:
		print(players[1])
		return
	if n % 2 != 0 or n == 2:
		print(players[0])
		return
	if n in pow2s or is_prime(n // 2):
		print(players[1])
		return
	print(players[0])
t = int(input())
for _ in range(t):
	solve()


from math import *

def pr(n):
	x = 0
	y = 0
	for i in range(2, int(sqrt(n) + 1)):
		if n % i == 0:
			while n % i == 0:
				n //= i
				if i % 2:
					y += 1
				else:
					x += 1
	if n > 1 and n % 2:
		y += 1
	return (x, y)
t = int(input())
while t:
	t = t - 1
	n = int(input())
	p = 'Ashishgup'
	q = 'FastestFinger'
	if n == 1:
		print(q)
	elif n == 2:
		print(p)
	elif n % 2:
		print(p)
	else:
		(x, y) = pr(n)
		if x == 1 and y == 1 or y == 0:
			print(q)
		else:
			print(p)


def isPrime(n):
	for i in range(2, int(n ** 0.5) + 1):
		if n % i == 0:
			return False
	return True
for t in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 == 1:
		print('Ashishgup')
	elif n & n - 1 == 0:
		print('FastestFinger')
	elif n % 4 == 0:
		print('Ashishgup')
	elif isPrime(n / 2):
		print('FastestFinger')
	else:
		print('Ashishgup')


def win(n):
	if n == 1:
		return False
	if n == 2:
		return True
	if n % 2 == 1:
		return True
	p2 = 0
	while n % 2 == 0:
		n //= 2
		p2 += 1
	if n == 1:
		return False
	if p2 > 1:
		return True
	i = 2
	while i * i <= n:
		if n % i == 0:
			return True
		i += 1
	return False
tests = int(input())
for test in range(tests):
	n = int(input())
	print('Ashishgup' if win(n) else 'FastestFinger')


def isPrime(num):
	if num < 2:
		return False
	for d in range(2, int(num ** 0.5) + 1):
		if num % d == 0:
			return False
	return True

def printWinner(n):
	if n == 1:
		print('FastestFinger')
	else:
		v = 4
		while v < n:
			v *= 2
		if v == n:
			print('FastestFinger')
			return
		if n % 2 == 0 and isPrime(n // 2):
			print('FastestFinger')
			return
		print('Ashishgup')
t = int(input())
for _ in range(t):
	n = int(input())
	printWinner(n)


import math as m

def is_prime(n):
	if n == 2 or n == 3:
		return True
	if n < 2 or n % 2 == 0:
		return False
	if n < 9:
		return True
	if n % 3 == 0:
		return False
	r = int(n ** 0.5)
	f = 5
	while f <= r:
		if n % f == 0:
			return False
		if n % (f + 2) == 0:
			return False
		f += 6
	return True
for _ in range(int(input())):
	n = int(input())
	l = m.log2(n)
	if n == 1:
		print('FastestFinger')
	elif n == 2 or n % 2 != 0:
		print('Ashishgup')
	elif m.ceil(l) == l:
		print('FastestFinger')
	elif n % 4 == 0:
		print('Ashishgup')
	elif is_prime(n // 2):
		print('FastestFinger')
	else:
		print('Ashishgup')


t = int(input())
for _ in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2:
		print('Ashishgup')
	else:
		count = 0
		while n % 2 == 0:
			count += 1
			n //= 2
		if n == 1:
			if count == 1:
				print('Ashishgup')
			else:
				print('FastestFinger')
		elif count > 1:
			print('Ashishgup')
		else:
			count = 0
			for i in range(3, int(n ** 0.5) + 1, 2):
				if n % i == 0:
					while n % i == 0:
						n //= i
						count += 1
			if count > 1 or (count == 1 and n > 1):
				print('Ashishgup')
			else:
				print('FastestFinger')


def fun(a):
	x = int(math.sqrt(a))
	if x % 2 == 0:
		x -= 1
	for i in range(x, 2, -2):
		if a % i == 0:
			return False
	return True
import math
for i in range(int(input())):
	n = int(input())
	if n != 2 and pow(2, int(math.log(n, 2))) == n:
		print('FastestFinger')
	elif n != 2 and n % 2 == 0 and (n % 4 != 0) and fun(n // 2):
		print('FastestFinger')
	else:
		print('Ashishgup')


from math import sqrt

def isPrime(n):
	if n == 1:
		return False
	if n == 2:
		return True
	m = int(sqrt(n)) + 1
	for i in range(3, m, 2):
		if n % i == 0:
			return False
	return True
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	p = 0
	while n % 2 == 0:
		n = n // 2
		p += 1
	if p == 1 and n >= 3 and isPrime(n) or (p > 1 and n == 1):
		print('FastestFinger')
	else:
		print('Ashishgup')


import sys
T = int(sys.stdin.readline())
for _ in range(T):
	n = int(sys.stdin.readline())
	if n % 2 or n == 2:
		print('FastestFinger' if n == 1 else 'Ashishgup')
	else:
		save_n = n
		count = 0
		while not save_n % 2:
			save_n //= 2
			count += 1
		if count > 1 and (not save_n == 1):
			print('Ashishgup')
		else:
			list_n = []
			for i in range(3, int(save_n ** 0.5) + 1, 2):
				while not save_n % i:
					list_n.append(i)
					save_n //= i
				if save_n == 1:
					break
			if not save_n == 1:
				list_n.append(save_n)
			if count == 1 and len(list_n) >= 2:
				print('Ashishgup')
			else:
				print('FastestFinger')


import math

def printDivisors(n):
	l = []
	i = 1
	while i <= math.sqrt(n):
		if n % i == 0:
			if n / i == i and i % 2 != 0 and (n // i != 2) and (i > 1):
				l.append(i)
			else:
				if i % 2 != 0 and n // i != 2 and (i > 1):
					l.append(i)
				if n // i % 2 != 0 and n // (n // i) != 2 and (i > 1):
					l.append(n // i)
		i = i + 1
	return l
t = int(input())
for _ in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 == 1:
		print('Ashishgup')
	else:
		l = printDivisors(n)
		if len(l) >= 1:
			print('Ashishgup')
		else:
			print('FastestFinger')


t = int(input())
ans = ['FastestFinger', 'Ashishgup']
for _ in range(t):
	n = int(input())
	if n == 1:
		print(ans[0])
		continue
	if n % 2 == 1:
		print(ans[1])
		continue
	if n == 2:
		print(ans[1])
		continue
	nn = n
	while nn % 2 == 0:
		nn //= 2
	if nn == 1:
		print(ans[0])
		continue
	if n % 4 == 0:
		print(ans[1])
		continue
	for i in range(3, int(n ** 0.5) + 1):
		if nn % i == 0:
			print(ans[1])
			break
	else:
		print(ans[0])


tt = int(input())
ne = 'FastestFinger'
fi = 'Ashishgup'
for loop in range(tt):
	n = int(input())
	if n == 1:
		print(ne)
	elif n == 2:
		print(fi)
	elif n % 2 == 1:
		print(fi)
	elif n % 4 == 0:
		rem = n
		while rem % 2 == 0:
			rem //= 2
		if rem == 1:
			print(ne)
		else:
			print(fi)
	else:
		rem = n // 2
		flag = True
		for i in range(3, min(rem, 31625)):
			if rem % i == 0:
				flag = False
				break
		if flag:
			print(ne)
		else:
			print(fi)


import os
import sys
from io import BytesIO, IOBase
import math

def main():
	pass
BUFSIZE = 8192

class FastIO(IOBase):
	newlines = 0

	def __init__(self, file):
		self._fd = file.fileno()
		self.buffer = BytesIO()
		self.writable = 'x' in file.mode or 'r' not in file.mode
		self.write = self.buffer.write if self.writable else None

	def read(self):
		while True:
			b = os.read(self._fd, max(os.fstat(self._fd).st_size, BUFSIZE))
			if not b:
				break
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines = 0
		return self.buffer.read()

	def readline(self):
		while self.newlines == 0:
			b = os.read(self._fd, max(os.fstat(self._fd).st_size, BUFSIZE))
			self.newlines = b.count(b'\n') + (not b)
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines -= 1
		return self.buffer.readline()

	def flush(self):
		if self.writable:
			os.write(self._fd, self.buffer.getvalue())
			(self.buffer.truncate(0), self.buffer.seek(0))

class IOWrapper(IOBase):

	def __init__(self, file):
		self.buffer = FastIO(file)
		self.flush = self.buffer.flush
		self.writable = self.buffer.writable
		self.write = lambda s: self.buffer.write(s.encode('ascii'))
		self.read = lambda : self.buffer.read().decode('ascii')
		self.readline = lambda : self.buffer.readline().decode('ascii')
import os
import sys
from io import BytesIO, IOBase

def main():
	pass
BUFSIZE = 8192

class FastIO(IOBase):
	newlines = 0

	def __init__(self, file):
		self._fd = file.fileno()
		self.buffer = BytesIO()
		self.writable = 'x' in file.mode or 'r' not in file.mode
		self.write = self.buffer.write if self.writable else None

	def read(self):
		while True:
			b = os.read(self._fd, max(os.fstat(self._fd).st_size, BUFSIZE))
			if not b:
				break
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines = 0
		return self.buffer.read()

	def readline(self):
		while self.newlines == 0:
			b = os.read(self._fd, max(os.fstat(self._fd).st_size, BUFSIZE))
			self.newlines = b.count(b'\n') + (not b)
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines -= 1
		return self.buffer.readline()

	def flush(self):
		if self.writable:
			os.write(self._fd, self.buffer.getvalue())
			(self.buffer.truncate(0), self.buffer.seek(0))

class IOWrapper(IOBase):

	def __init__(self, file):
		self.buffer = FastIO(file)
		self.flush = self.buffer.flush
		self.writable = self.buffer.writable
		self.write = lambda s: self.buffer.write(s.encode('ascii'))
		self.read = lambda : self.buffer.read().decode('ascii')
		self.readline = lambda : self.buffer.readline().decode('ascii')
(sys.stdin, sys.stdout) = (IOWrapper(sys.stdin), IOWrapper(sys.stdout))
input = lambda : sys.stdin.readline().rstrip('\r\n')

def pow2(n):
	p = 0
	while n % 2 != 1:
		n //= 2
		p += 1
	return p

def isPrime(n):
	root = int(n ** 0.5)
	root += 1
	for i in range(2, root):
		if n % i == 0:
			return False
	else:
		return True
for xyz in range(0, int(input())):
	n = int(input())
	p1 = 'Ashishgup'
	p2 = 'FastestFinger'
	if n == 1:
		print(p2)
	elif n == 2:
		print(p1)
	elif n % 2 == 1:
		print(p1)
	else:
		p = pow2(n)
		if 2 ** p == n:
			print(p2)
		elif p > 1:
			print(p1)
		else:
			n = n // 2 ** p
			if isPrime(n):
				print(p2)
			else:
				print(p1)


import math

def facts(n):
	ans = []
	for i in range(1, int(math.sqrt(n) + 1)):
		if n % i == 0:
			ans.append(i)
			ans.append(n // i)
	ans = sorted(list(dict.fromkeys(ans)))
	if ans[-1] == n:
		ans = ans[:-1]
	return ans
for _ in range(int(input())):
	n = int(input())
	m = 0
	while n > 1:
		if n % 2 == 0:
			f = facts(n)
			fnd = False
			for i in range(len(f) - 2, -1, -1):
				if f[i] % 2 == 1 and f[i] != 1:
					n //= f[i]
					fnd = True
					break
			if not fnd:
				n -= 1
			m += 1
		else:
			n = 1
			m += 1
	if m % 2 == 1:
		print('Ashishgup')
	else:
		print('FastestFinger')


def factorization(n):
	arr = []
	temp = n
	for i in range(2, int(-(-n ** 0.5 // 1)) + 1):
		if temp % i == 0:
			cnt = 0
			while temp % i == 0:
				cnt += 1
				temp //= i
			arr.append([i, cnt])
	if temp != 1:
		arr.append([temp, 1])
	if arr == []:
		arr.append([n, 1])
	return arr
from pprint import pprint
import sys
msgf = 'FastestFinger'
msga = 'Ashishgup'
q = int(input())
for _ in range(q):
	n = int(input())
	if n == 1:
		print(msgf)
		continue
	if n == 2:
		print(msga)
		continue
	if n % 2 == 1:
		print(msga)
		continue
	l = factorization(n)
	oddcnt = 0
	evencnt = 0
	for (num, cnt) in l:
		if num % 2 == 1:
			oddcnt += cnt
		else:
			evencnt += cnt
	if oddcnt == 0:
		print(msgf)
		continue
	if oddcnt == 1 and evencnt == 1:
		print(msgf)
	else:
		print(msga)


import math
a = 'Ashishgup'
f = 'FastestFinger'

def remover(n):
	while n % 2 == 0:
		n //= 2
	return n

def primer(n):
	for i in range(2, int(math.pow(n, 0.5)) + 1):
		if n % i == 0:
			return a
	return f
for test in range(int(input())):
	n = int(input())
	if n == 1:
		print(f)
	elif n == 2:
		print(a)
	elif n % 2 == 1:
		print(a)
	elif remover(n) == 1:
		print(f)
	elif n / 2 % 2 == 1:
		print(primer(n / 2))
	else:
		print(a)


import math
WIN = 'Ashishgup'
LOSS = 'FastestFinger'

def sumpfac(n):
	assert n % 2 != 0
	sum = 0
	cont = True
	while cont:
		cont = False
		for i in range(3, int(math.sqrt(n)) + 1, 2):
			if n % i == 0:
				n //= i
				sum += 1
				cont = True
				break
	if n > 1:
		sum += 1
	return sum

def solve(n):
	if n == 1:
		return LOSS
	if n % 2 == 1:
		return WIN
	if n == 2:
		return WIN
	t = n
	pow2 = 0
	while t % 2 == 0:
		t //= 2
		pow2 += 1
	if pow2 == 1:
		if sumpfac(t) >= 2:
			return WIN
		else:
			return LOSS
	if t == 1:
		return LOSS
	return WIN
for k in range(int(input())):
	n = int(input())
	print(solve(n))


import math
for cases in range(int(input())):
	n = int(input())
	a = 'Ashishgup'
	f = 'FastestFinger'
	s = 0
	if n == 1:
		print(f)
	elif n == 2:
		print(a)
	elif n % 2 == 1:
		print(a)
	else:
		flag = 0
		for i in range(3, int(math.sqrt(n)) + 1):
			if n % i == 0:
				if i % 2 != 0 or n // i % 2 != 0:
					print(a)
					flag = 1
					break
		if flag == 0:
			print(f)


import math

def high(n):
	return n & ~(n - 1)
t = int(input())
for _ in range(t):
	n = int(input())
	temp = high(n)
	if temp == 2:
		if n == 2:
			print('Ashishgup')
		else:
			n //= temp
			for i in range(2, math.floor(math.sqrt(n)) + 1):
				if n % i == 0:
					print('Ashishgup')
					break
			else:
				print('FastestFinger')
	elif temp == n:
		print('FastestFinger')
	else:
		print('Ashishgup')


cases = int(input())

def primechecker(number):
	if number == 1:
		return False
	if number == 2:
		return True
	for j in range(2, int(number ** 0.5) + 1):
		if number % j == 0:
			return False
	return True
for i in range(cases):
	n = int(input())
	a = 'Ashishgup'
	b = 'FastestFinger'
	ptwo = [4]
	start = 3
	while max(ptwo) <= 10 ** 9:
		ptwo.append(2 ** start)
		start += 1
	if n == 1 or n in ptwo:
		print(b)
	elif n == 2 or n % 2 == 1:
		print(a)
	elif n % 2 == 0:
		num = int(n / 2)
		if primechecker(num):
			print(b)
		else:
			print(a)


import math
t = int(input())
for _ in range(t):
	n = int(input())
	cnt = 0
	if n == 1:
		cnt = 2
	elif n == 2:
		cnt = 1
	elif n & 1:
		cnt = 1
	else:
		odd_fact = 0
		cnt = 0
		for i in range(2, math.ceil(n ** 0.5)):
			if n % i == 0:
				if cnt == 0:
					if i & 1:
						odd_fact = i
						cnt == 1
					if n // i & 1:
						odd_fact = n // i
						cnt == 1
				if cnt == 1:
					if i & 1:
						odd_fact = min(odd_fact, i)
					if n // i & 1:
						odd_fact = min(odd_fact, n // i)
		if odd_fact == 0:
			cnt = 2
		elif n // odd_fact == 2:
			cnt = 2
		else:
			cnt = 1
	if cnt == 1:
		print('Ashishgup')
	else:
		print('FastestFinger')


def solve(n):
	if n == 1:
		return 'FastestFinger'
	elif n == 2 or n % 2 == 1:
		return 'Ashishgup'
	else:
		for i in range(3, int(n ** 0.5) + 1):
			if n % i == 0:
				if i % 2 == 1 or n // i % 2 == 1:
					return 'Ashishgup'
	return 'FastestFinger'
t = int(input())
for _ in range(t):
	n = int(input())
	print(solve(n))


T = int(input())

def getPow(n, d):
	count = 0
	while n % d == 0:
		n = n / d
		count += 1
	return count

def getOddFacs(n):
	count = 0
	d = 1
	while n > 1:
		p = getPow(n, d)
		n = int(n / d ** p)
		if d % 2 == 1:
			count += p
		d += 2
	return count

def hasOddFacs(n):
	count = 0
	d = 3
	while count < 2 and d <= int(pow(n, 0.5)):
		p = getPow(n, d)
		n = int(n / d ** p)
		count += p
		d += 2
	return count

def isPrime(n):
	for i in range(3, int(pow(n, 0.5)) + 1):
		if n % i == 0:
			return False
	return True
while T > 0:
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 == 1:
		print('Ashishgup')
	elif n % 2 == 0:
		p = getPow(n, 2)
		m = int(n / 2 ** p)
		pFlag = isPrime(m)
		if n == 2:
			print('Ashishgup')
		elif n % 4 != 0:
			if pFlag:
				print('FastestFinger')
			elif pFlag == False:
				print('Ashishgup')
		elif n % 4 == 0:
			if m != 1:
				print('Ashishgup')
			else:
				print('FastestFinger')
	T -= 1


import sys
input = sys.stdin.readline
t = int(input())

def pr(n):
	for i in range(2, int(n ** 0.5) + 1):
		if n % i == 0:
			return False
	return True
for _ in range(t):
	n = int(input())
	if n & n - 1 == 0 and n > 2 or n == 1:
		print('FastestFinger')
	elif n == 2 or n % 2 == 1:
		print('Ashishgup')
	elif pr(n // 2):
		print('FastestFinger')
	else:
		print('Ashishgup')


import math
J = lambda : int(input())

def get_factors(n):
	ans = set()
	for i in range(1, int(math.sqrt(n)) + 1):
		if n % i == 0:
			if i != 1:
				if i % 2 == 1:
					ans.add(i)
				if n // i % 2 == 1:
					ans.add(n // i)
	return list(ans)
dct = {1: 0, 2: 1}

def getAns(n):
	if n in dct:
		return dct[n]
	if n % 2 == 1:
		return 1
	elif 0 in [getAns(n // fac) for fac in get_factors(n)]:
		dct[n] = 1
		return dct[n]
	else:
		dct[n] = 0
		return 0
for _ in range(J()):
	n = J()
	if getAns(n) == 1:
		print('Ashishgup')
	else:
		print('FastestFinger')


A = 'Ashishgup'
F = 'FastestFinger'

def isPrime(n):
	if n <= 1:
		return False
	if n <= 3:
		return True
	if n % 2 == 0 or n % 3 == 0:
		return False
	i = 5
	while i * i <= n:
		if n % i == 0 or n % (i + 2) == 0:
			return False
		i = i + 6
	return True
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print(F)
	elif n % 2 == 1 or n == 2:
		print(A)
	else:
		(e, o) = (0, 0)
		p = n
		while p % 2 == 0:
			p //= 2
			e += 1
		if p == 1:
			print(F)
			continue
		if isPrime(p):
			o = 1
		else:
			o = 2
		if e == 1 and o == 1:
			print(F)
		else:
			print(A)


import sys, math

def func(n):
	while n % 2 == 0:
		n = n // 2
	if n == 1:
		return 1
	else:
		return n

def no_of_odd(n):
	no = 0
	while n % 2 == 0:
		n = n // 2
	for i in range(3, math.floor(math.sqrt(n)) + 2, 2):
		if n % i == 0:
			no += 1
			return no + 1
	return 1
input = sys.stdin.readline()
t = int(input)
while t > 0:
	t -= 1
	n = int(sys.stdin.readline())
	turn = 1
	flag = 0
	y = func(n)
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 != 0:
		print('Ashishgup')
	elif y == 1:
		print('FastestFinger')
	else:
		x = no_of_odd(y)
		if x > 1:
			print('Ashishgup')
		elif x == 1:
			if n % 4 == 0:
				print('Ashishgup')
			else:
				print('FastestFinger')


def issimple(n):
	for i in range(3, int(n ** 0.5) + 1):
		if n % i == 0:
			return False
	return True

def startplay():
	names = ('Ashishgup', 'FastestFinger')
	n = int(input())
	if n == 1:
		print(names[1])
	elif n == 2:
		print(names[0])
	elif n % 2 != 0:
		print(names[0])
	elif n & -n == n:
		print(names[1])
	else:
		print(names[0] if n % 4 == 0 else names[1] if issimple(n // 2) else names[0])
for _ in range(int(input())):
	startplay()


import sys
RI = lambda : [int(x) for x in sys.stdin.readline().strip().split()]
from collections import defaultdict as df
import copy
p1 = 'Ashishgup'
p2 = 'FastestFinger'
primes = []
sieve = [0] * 40000
for i in range(2, 40000):
	if sieve[i] == 0:
		primes.append(i)
		for j in range(i * i, 40000, i):
			sieve[j] = 1
t = int(input().strip())
for _ in range(t):
	n = int(input().strip())
	if n == 1:
		print(p2)
	elif n > 1 and n % 2 == 1:
		print(p1)
	elif n == 2:
		print(p1)
	else:
		even = 0
		odd = 0
		i = 0
		l = len(primes)
		while i < l:
			if n % primes[i] == 0:
				while n % primes[i] == 0:
					n //= primes[i]
					if primes[i] % 2 == 0:
						even += 1
					else:
						odd += 1
			i += 1
		if n > 1:
			if n % 2 == 0:
				even += 1
			else:
				odd += 1
		if odd == 0:
			print(p2)
		elif odd == 1 and even == 1:
			print(p2)
		elif odd == 1 and even > 1:
			print(p1)
		elif odd > 1 and even == 1:
			print(p1)
		else:
			print(p1)


import os
import sys
from io import BytesIO, IOBase

def solution(n):
	if n == 1:
		write('FastestFinger')
		return
	if n == 2:
		write('Ashishgup')
		return
	if n & 1:
		write('Ashishgup')
	else:
		if n & n - 1 == 0:
			write('FastestFinger')
			return

		def is_prime(x):
			for i in range(2, min(x, 50000)):
				if x % i == 0:
					return False
			return True
		if n % 4 == 0:
			write('Ashishgup')
			return
		if is_prime(n // 2):
			write('FastestFinger')
			return
		write('Ashishgup')

def main():
	for _ in range(r_int()):
		n = r_int()
		solution(n)
BUFSIZE = 8192

class FastIO(IOBase):
	newlines = 0

	def __init__(self, file):
		self._fd = file.fileno()
		self.buffer = BytesIO()
		self.writable = 'x' in file.mode or 'r' not in file.mode
		self.write = self.buffer.write if self.writable else None

	def read(self):
		while True:
			b = os.read(self._fd, max(os.fstat(self._fd).st_size, BUFSIZE))
			if not b:
				break
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines = 0
		return self.buffer.read()

	def readline(self):
		while self.newlines == 0:
			b = os.read(self._fd, max(os.fstat(self._fd).st_size, BUFSIZE))
			self.newlines = b.count(b'\n') + (not b)
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines -= 1
		return self.buffer.readline()

	def flush(self):
		if self.writable:
			os.write(self._fd, self.buffer.getvalue())
			(self.buffer.truncate(0), self.buffer.seek(0))

class IOWrapper(IOBase):

	def __init__(self, file):
		self.buffer = FastIO(file)
		self.flush = self.buffer.flush
		self.writable = self.buffer.writable
		self.write = lambda s: self.buffer.write(s.encode('ascii'))
		self.read = lambda : self.buffer.read().decode('ascii')
		self.readline = lambda : self.buffer.readline().decode('ascii')
(sys.stdin, sys.stdout) = (IOWrapper(sys.stdin), IOWrapper(sys.stdout))

def input():
	return sys.stdin.readline().rstrip('\r\n')

def write(*args, end='\n'):
	for x in args[:-1]:
		sys.stdout.write(str(x) + ' ')
	sys.stdout.write(str(args[-1]))
	sys.stdout.write(end)

def r_array():
	return [int(x) for x in input().split()]

def r_int():
	return int(input())
main()


t = int(input())
for _ in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	if n == 2 or n & 1 == 1:
		print('Ashishgup')
		continue
	if n & n - 1 == 0:
		print('FastestFinger')
		continue
	cnt = 0
	while n & 1 == 0:
		cnt += 1
		n = n >> 1
	if cnt > 1:
		print('Ashishgup')
	else:
		i = 2
		flag = 1
		while i * i <= n:
			if n % i == 0:
				flag = 0
				break
			i += 1
		if flag == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')


from functools import reduce

def prime(n):
	if n == 2:
		return True
	for i in range(2, min(n // 2 + 1, 50000)):
		if n % i == 0:
			return False
	return True

def twoPower(x):
	if x & x - 1 == 0 and x != 0:
		return True
	return False
for t in range(int(input())):
	n = int(input())
	win = 1
	if n == 1:
		win = 0
	elif n == 2:
		win = 1
	elif twoPower(n):
		win = 0
	elif n % 2 == 0:
		if n % 4 != 0:
			if prime(n // 2):
				win = 0
			else:
				win = 1
		else:
			win = 1
	if win % 2 == 0:
		print('FastestFinger')
	else:
		print('Ashishgup')


import sys
input = lambda : sys.stdin.readline().rstrip()
inp = sys.stdin.buffer.readline

def I():
	return list(map(int, inp().split()))
from math import sqrt

def isprime(a):
	for i in range(2, int(sqrt(a)) + 1):
		if a % i == 0:
			return False
	return True
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n & 1:
		print('Ashishgup')
	else:
		cur = 0
		n1 = n
		while n & 1 == 0:
			cur += 1
			n //= 2
		if 2 ** cur == n1:
			print('FastestFinger')
		elif cur == 1 and isprime(n):
			print('FastestFinger')
		else:
			print('Ashishgup')


def isprime(n):
	for i in range(2, int(n ** 0.5) + 1):
		if n % i == 0:
			return False
	return True

def solve(n, p):
	if n % 2 == 1:
		if n == 1:
			print('FastestFinger')
			return
		else:
			print('Ashishgup')
			return
	elif n & n - 1 == 0:
		if n == 2:
			print('Ashishgup')
			return
		else:
			print('FastestFinger')
			return
	elif n % 4 == 0:
		print('Ashishgup')
		return
	else:
		if isprime(n // 2):
			print('FastestFinger')
			return
		else:
			print('Ashishgup')
		return
T = int(input())
for x in range(T):
	n = int(input())
	solve(n, 0)


import math
t = int(input())

def prime(num):
	for i in range(3, int(math.sqrt(num)) + 1, 2):
		if num % i == 0:
			return 0
	else:
		return 1
while t:
	n = int(input())
	if n % 2:
		if n == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')
	else:
		x = int(n / 2)
		if n == 2:
			print('Ashishgup')
		elif x % 2:
			check = prime(x)
			if check:
				print('FastestFinger')
			else:
				print('Ashishgup')
		else:
			while x > 1 and x % 2 == 0:
				x = int(x / 2)
			if x == 1:
				print('FastestFinger')
			else:
				print('Ashishgup')
	t = t - 1


import sys
import math

def primeFactors(n):
	l = []
	while n % 2 == 0:
		l.append(2)
		n = n / 2
	for i in range(3, int(math.sqrt(n)) + 1, 2):
		while n % i == 0:
			l.append(i)
			n = n / i
	if n > 2:
		l.append(n)
	return l

def isPowerOfTwo(n):
	if n == 0:
		return False
	while n != 1:
		if n % 2 != 0:
			return False
		n = n // 2
	return True
k = int(sys.stdin.readline())
for i in range(k):
	n = int(input())
	if n % 2 != 0 and n != 1 or n == 2:
		print('Ashishgup')
		continue
	if isPowerOfTwo(n) == True or n == 1:
		print('FastestFinger')
		continue
	r = primeFactors(n)
	r = [int(i) for i in r]
	f = r.count(2)
	if f > 1:
		print('Ashishgup')
	elif f == 1 and len(r) - f > 1:
		print('Ashishgup')
	else:
		print('FastestFinger')


def isprime(n):
	for i in range(2, int(n ** 0.5) + 1):
		if not n % i:
			return False
	return True
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2 or n & 1:
		print('Ashishgup')
	elif isprime(n // 2) or n & n - 1 == 0:
		print('FastestFinger')
	else:
		print('Ashishgup')


from sys import stdin
from math import sqrt

def iinput():
	return int(stdin.readline())

def sinput():
	return input()

def minput():
	return map(int, stdin.readline().split())

def linput():
	return list(map(int, stdin.readline().split()))

def prime(n):
	if n == 2:
		return True
	for i in range(2, int(sqrt(n)) + 1):
		if n % i == 0:
			return False
	return True

def div(x):
	while x & 1 == 0:
		x //= 2
	return x
t = iinput()
while t:
	t -= 1
	n = iinput()
	if n == 1:
		print('FastestFinger')
	elif n & 1:
		print('Ashishgup')
	elif n == 2:
		print('Ashishgup')
	elif div(n) == 1:
		print('FastestFinger')
	elif prime(n // 2):
		print('FastestFinger')
	else:
		print('Ashishgup')


import math
t = int(input())
for _ in range(t):
	n = int(input())
	cnt2 = 0
	while n % 2 == 0:
		n //= 2
		cnt2 += 1
	if n == 1 and cnt2 != 1:
		print('FastestFinger')
	elif n == 1:
		print('Ashishgup')
	elif cnt2 == 1:
		isNPrime = True
		rangeLoop = int(math.sqrt(n)) + 1
		for i in range(3, rangeLoop, 2):
			if n % i == 0:
				isNPrime = False
				break
		if isNPrime:
			print('FastestFinger')
		else:
			print('Ashishgup')
	else:
		print('Ashishgup')


for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n & 1 or n == 2:
		print('Ashishgup')
	else:
		name = 'FastestFinger'
		i = 3
		while i * i <= n:
			if n % i == 0 and (i & 1 or n // i & 1):
				name = 'Ashishgup'
				break
			i += 1
		print(name)


from sys import stdin
for _ in range(int(stdin.readline())):
	n = int(stdin.readline())
	i = n
	cou = 0
	while i % 2 == 0:
		cou += 1
		i //= 2
	if cou == 0 and i == 1:
		print('FastestFinger')
	elif cou == 0:
		print('Ashishgup')
	elif cou == 1 and i == 1:
		print('Ashishgup')
	elif cou == 1:
		x = i
		co = 0
		for j in range(3, int(x ** 0.5) + 1, 2):
			while x % j == 0:
				x //= j
				co += 1
		if x != 1:
			co += 1
		if co > 1:
			print('Ashishgup')
		else:
			print('FastestFinger')
	elif cou >= 2 and i == 1:
		print('FastestFinger')
	elif cou >= 2:
		print('Ashishgup')


from math import sqrt, log2
r = int(input())
ans = []
for _ in range(r):
	n = int(input())
	if n == 1:
		ans.append('FastestFinger')
	elif n % 2 == 1 or n == 2:
		ans.append('Ashishgup')
	else:
		n //= 2
		if n % 2 == 0:
			if log2(n) - int(log2(n)) == 0:
				ans.append('FastestFinger')
			else:
				ans.append('Ashishgup')
		else:
			is_prime = True
			for i in range(2, int(sqrt(n)) + 1):
				if n % i == 0:
					is_prime = False
					break
			if is_prime:
				ans.append('FastestFinger')
			else:
				ans.append('Ashishgup')
print('\n'.join(ans))


def isPrime(n):
	if n <= 1:
		return False
	if n <= 3:
		return True
	if n % 2 == 0 or n % 3 == 0:
		return False
	i = 5
	while i * i <= n:
		if n % i == 0 or n % (i + 2) == 0:
			return False
		i = i + 6
	return True
for _ in range(int(input())):
	n = int(input())
	if n % 2 and n > 1:
		print('Ashishgup')
	elif n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	else:
		r = 1
		a = n
		while a % 2 == 0:
			a = a // 2
			r = r * 2
		n = n // r
		if n == 1:
			print('FastestFinger')
		elif r == 2 and isPrime(n):
			print('FastestFinger')
		else:
			print('Ashishgup')


def solve():
	n = int(input())
	cond = n == 1
	if n > 2 and n % 2 == 0:
		if n & n - 1 == 0:
			cond = True
		elif n % 4 != 0:
			n //= 2
			i = 2
			cond = True
			while i * i <= n:
				if n % i == 0:
					cond = False
					break
				i += 1
	if cond:
		print('FastestFinger')
	else:
		print('Ashishgup')

def main():
	t = int(input())
	for _ in range(t):
		solve()
main()


for _ in range(int(input())):
	n = int(input())
	ar = []
	i = 2
	hi = n
	while i * i <= hi:
		if n % i == 0:
			ar.append(i)
			n //= i
		else:
			i += 1
	if n > 1:
		ar.append(n)
	kek = 1
	for elem in ar:
		if elem % 2 == 1:
			kek = 0
	if hi == 1:
		print('FastestFinger')
	elif hi == 2:
		print('Ashishgup')
	elif kek:
		print('FastestFinger')
	elif len(ar) == 2 and (ar[0] + ar[1]) % 2 == 1:
		if ar[0] == 2 or ar[1] == 2:
			print('FastestFinger')
		else:
			print('Ashishgup')
	else:
		print('Ashishgup')


import math
for i in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 != 0:
		print('Ashishgup')
	elif n % 4 == 0:
		if math.log2(n) % 1 == 0:
			print('FastestFinger')
		else:
			print('Ashishgup')
	else:
		n = n // 2
		flag = False
		for i in range(3, int(n ** (1 / 2)) + 1):
			if n % i == 0:
				flag = True
		if not flag:
			print('FastestFinger')
		else:
			print('Ashishgup')


from sys import stdin, stdout
from collections import defaultdict
import math
cin = stdin.readline
cout = stdout.write
mp = lambda : list(map(int, cin().split()))

def bfs(x):
	z = int(math.log(x, 2))
	if 2 ** z == x:
		d[x] = 0
		level[x].append(level[x][0])
		return [x]
	y = int(x ** 0.5)
	qu = []
	for i in range(2, y + 1):
		if not x % i and (i % 2 or x // i % 2):
			if not x // i % 2:
				qu.append(x // i)
				level[x // i].append(level[x][0] + 1)
			if not i % 2:
				qu.append(i)
				level[i].append(level[x][0] + 1)
	if not qu:
		d[x] = 0
		qu.append(x)
		level[x].append(level[x][0])
	return qu
d = {1: 0, 2: 1, 4: 0, 6: 0, 8: 0, 10: 0, 12: 1, 14: 0, 16: 0, 18: 1, 20: 1, 32: 0, 34: 0, 38: 0, 36: 1, 40: 1, 42: 1, 64: 0}
pl = ['FastestFinger', 'Ashishgup']
(t,) = mp()
for _ in range(t):
	(n,) = mp()
	k = 0
	level = defaultdict(list)
	if n in d:
		cout(pl[d[n]] + '\n')
	elif n % 2:
		cout('Ashishgup\n')
	else:
		l = [n]
		f = 0
		k = 0
		level[n].append(0)
		while len(l) > 0:
			if l[0] in d:
				if not d[l[0]] and level[l[0]][0] % 2 or (not level[l[0]][0] % 2 and d[l[0]]):
					cout(pl[1] + '\n')
					d[n] = 1
					f = 1
					break
				level[l[0]].pop(0)
			else:
				l += bfs(l[0])
				level[l[0]].pop(0)
			l.pop(0)
		if f:
			while l:
				l.pop(0)
		else:
			cout(pl[0] + '\n')
			d[n] = 0


def isPrime(n):
	if n <= 1:
		return False
	if n <= 3:
		return True
	if n % 2 == 0 or n % 3 == 0:
		return False
	i = 5
	while i * i <= n:
		if n % i == 0 or n % (i + 2) == 0:
			return False
		i = i + 6
	return True
t = int(input())
for _ in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 != 0:
		print('Ashishgup')
	else:
		k = n
		while n % 2 == 0:
			n = n >> 1
		if n == 1:
			print('FastestFinger')
		elif k % 4 == 0:
			print('Ashishgup')
		else:
			k = k // 2
			if isPrime(k):
				print('FastestFinger')
			else:
				print('Ashishgup')


import os, io
from sys import stdout
import collections
import random
input = io.BytesIO(os.read(0, os.fstat(0).st_size)).readline

def binomial_coefficient(n, k):
	if 0 <= k <= n:
		ntok = 1
		ktok = 1
		for t in range(1, min(k, n - k) + 1):
			ntok *= n
			ktok *= t
			n -= 1
		return ntok // ktok
	else:
		return 0

def powerOfK(k, max):
	if k == 1:
		return [1]
	if k == -1:
		return [-1, 1]
	result = []
	n = 1
	while n <= max:
		result.append(n)
		n *= k
	return result

def prefixSum(arr):
	for i in range(1, len(arr)):
		arr[i] = arr[i] + arr[i - 1]
	return arr

def divisors(n):
	i = 1
	result = []
	while i * i <= n:
		if n % i == 0:
			if n / i == i:
				result.append(i)
			else:
				result.append(i)
				result.append(n / i)
		i += 1
	return result
memo_divs = {}

def solve(n, p):
	if n == 1:
		return not p
	if n == 2:
		return p
	if n in memo_divs:
		divs = memo_divs[n]
	else:
		divs = list(filter(lambda x: x % 2 == 1 and x > 1, divisors(n)))
		memo_divs[n] = divs
	if not len(divs):
		return not p
	else:
		for d in divs:
			if solve(int(n // d), not p) == p:
				return p
		return not p
t = int(input())
for _ in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 == 1:
		print('Ashishgup')
	else:
		r = solve(n, True)
		if r:
			print('Ashishgup')
		else:
			print('FastestFinger')


import sys
import math
import collections
import heapq

def set_debug(debug_mode=False):
	if debug_mode:
		fin = open('input.txt', 'r')
		sys.stdin = fin

def int_input():
	return list(map(int, input().split()))

def prime(n):
	for i in range(2, min(40000, n)):
		if n % i == 0:
			return False
	return True
t = int(input())
for ti in range(1, t + 1):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 == 0:
		if n & n - 1 == 0:
			print('FastestFinger')
		elif n % 4 != 0 and prime(n // 2):
			print('FastestFinger')
		else:
			print('Ashishgup')
	else:
		print('Ashishgup')


import math
hashmap = [-1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0]
two = set()
for i in range(33):
	two.add(2 ** i)
for _ in range(int(input())):
	n = int(input())
	if n < 10:
		if hashmap[n] == 1:
			print('Ashishgup')
		else:
			print('FastestFinger')
	else:
		prime = True
		ans = False
		if n in two:
			ans = True
		elif n % 2 == 0:
			n = n // 2
		else:
			prime = False
		if prime == True and ans == False:
			for i in range(2, int(math.sqrt(n) + 2)):
				if n % i == 0:
					prime = False
					break
		if prime:
			print('FastestFinger')
		else:
			print('Ashishgup')


from functools import lru_cache

def odd_div(x):
	if bin(x).count('1') == 1:
		return False
	cnt2 = 0
	while x & 1 == 0:
		x >>= 1
		cnt2 += 1
	i = 3
	num_prime = 0
	while i * i <= x:
		while x % i == 0:
			num_prime += 1
			x //= i
		i += 1
	if x != 1 or num_prime == 0:
		num_prime += 1
	if cnt2 == 1 and num_prime <= 1:
		return False
	else:
		return True

def main():
	for __ in [0] * int(input()):
		n = int(input())
		if n == 1:
			print('FastestFinger')
		elif n == 2:
			print('Ashishgup')
		elif n & 1:
			print('Ashishgup')
		elif odd_div(n):
			print('Ashishgup')
		else:
			print('FastestFinger')
main()


import os
import sys
import math
from io import BytesIO, IOBase
from fractions import Fraction
BUFSIZE = 8192

class FastIO(IOBase):
	newlines = 0

	def __init__(self, file):
		self._fd = file.fileno()
		self.buffer = BytesIO()
		self.writable = 'x' in file.mode or 'r' not in file.mode
		self.write = self.buffer.write if self.writable else None

	def read(self):
		while True:
			b = os.read(self._fd, max(os.fstat(self._fd).st_size, BUFSIZE))
			if not b:
				break
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines = 0
		return self.buffer.read()

	def readline(self):
		while self.newlines == 0:
			b = os.read(self._fd, max(os.fstat(self._fd).st_size, BUFSIZE))
			self.newlines = b.count(b'\n') + (not b)
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines -= 1
		return self.buffer.readline()

	def flush(self):
		if self.writable:
			os.write(self._fd, self.buffer.getvalue())
			(self.buffer.truncate(0), self.buffer.seek(0))

class IOWrapper(IOBase):

	def __init__(self, file):
		self.buffer = FastIO(file)
		self.flush = self.buffer.flush
		self.writable = self.buffer.writable
		self.write = lambda s: self.buffer.write(s.encode('ascii'))
		self.read = lambda : self.buffer.read().decode('ascii')
		self.readline = lambda : self.buffer.readline().decode('ascii')
(sys.stdin, sys.stdout) = (IOWrapper(sys.stdin), IOWrapper(sys.stdout))
input = lambda : sys.stdin.readline().rstrip('\r\n')
for t in range(int(input())):
	n = int(input())
	two = 0
	odd = 0
	copy = n
	while n % 2 == 0:
		two += 1
		n //= 2
	for i in range(3, int(math.sqrt(n)) + 1, 2):
		while n % i == 0:
			odd += 1
			n //= i
	if n > 2:
		odd += 1
	ch = 0
	if two == 0 and odd > 0:
		ch = 1
	elif two == 1:
		if odd > 1:
			ch = 1
		else:
			ch = 0
	elif two > 1 and odd > 0:
		ch = 1
	if odd == 0:
		ch = 0
	if copy == 2:
		ch = 1
	if ch == 0:
		print('FastestFinger')
	else:
		print('Ashishgup')


def prnd(n):
	t = int(n ** 0.5)
	klc = 0
	for i in range(2, t + 1):
		if n % i == 0 and (i % 2 == 1 or n // i % 2 == 1):
			klc += 1
			if i % 2 == 1 and n // i % 2 == 1:
				return 2
		if klc > 1:
			return 2
	return klc
kr = int(input())
for tkr in range(kr):
	n = int(input())
	if n == 1 or (n % 2 == 0 and prnd(n) == 0 and (n != 2)) or (n % 2 == 0 and n // 2 % 2 == 1 and (prnd(n) == 1)):
		print('FastestFinger')
	else:
		print('Ashishgup')


primes = set()
isPrime = [True for i in range(10 ** 5)]
for i in range(3, len(isPrime), 2):
	if not isPrime[i]:
		continue
	primes.add(i)
	mul = 3
	while mul * i < len(isPrime):
		isPrime[mul * i] = False
		mul += 2

def isItPrime(x):
	if x in primes:
		return True
	for elem in primes:
		if x % elem == 0:
			return False
	return True
for _ in range(int(input())):
	n = int(input())
	names = ['Ashishgup', 'FastestFinger']
	if n % 2 == 1:
		if n == 1:
			print(names[1])
		else:
			print(names[0])
	elif n == 2:
		print(names[0])
	else:
		pow = 0
		while n % 2 == 0:
			pow += 1
			n //= 2
		if n == 1 or (pow == 1 and isItPrime(n)):
			print(names[1])
		else:
			print(names[0])


for _ in range(int(input())):
	n = int(input())
	flag = True
	check = False
	var = 0
	x = ''
	if n == 1:
		print('FastestFinger')
	elif n % 2 == 1 or n == 2:
		print('Ashishgup')
	else:
		for i in range(3, int(n ** 0.5) + 1):
			var = i
			if n % i == 0:
				if i % 2 == 1 or n // i % 2 == 1:
					x = 'Ashishgup'
					flag = False
					break
		if flag:
			x = 'FastestFinger'
		print(x)


def game(n):
	if n == 1:
		return 'FastestFinger'
	elif n % 2 == 1 or n == 2:
		return 'Ashishgup'
	else:
		for i in range(3, int(n ** 0.5) + 1):
			if n % i == 0 and i % 2 == 1 or (n % i == 0 and n // i % 2 == 1):
				return 'Ashishgup'
		return 'FastestFinger'
for i in range(int(input())):
	print(game(int(input())))


import math

def answer(n):
	if n == 1:
		return 'FastestFinger'
	if n % 2 != 0 or n == 2:
		return 'Ashishgup'
	count = 0
	res = n
	while res % 2 == 0:
		count += 1
		res = res // 2
	if res == 1:
		return 'FastestFinger'
	l = []
	prime = True
	for i in range(2, int(math.sqrt(n)) + 1):
		if res % i == 0:
			l.append(i)
			x = res // i
			if i != x:
				l.append(x)
		if len(l) >= 2:
			prime = False
			break
	if len(l) == 1:
		while res % l[0] == 0:
			res = res // l[0]
		if res == 1:
			prime = False
	if count == 1:
		if prime:
			return 'FastestFinger'
		else:
			return 'Ashishgup'
	if count > 1:
		return 'Ashishgup'
t = int(input())
for i in range(t):
	n = int(input())
	print(answer(n))


def isprime(n):
	if n <= 1:
		return False
	if n <= 3:
		return True
	if n % 2 == 0 or n % 3 == 0:
		return False
	i = 5
	while i * i <= n:
		if n % i == 0 or n % (i + 2) == 0:
			return False
		i = i + 6
	return True
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 != 0 or n == 2:
		print('Ashishgup')
	else:
		num = n
		val = 0
		while num % 2 == 0:
			num //= 2
			val += 1
		if num == 1:
			print('FastestFinger')
		elif val == 1:
			if isprime(num):
				print('FastestFinger')
			else:
				print('Ashishgup')
		else:
			print('Ashishgup')


from collections import defaultdict
import sys, math
f = None
try:
	f = open('q1.input', 'r')
except IOError:
	f = sys.stdin
if 'xrange' in dir(__builtins__):
	range = xrange

def print_case_iterable(case_num, iterable):
	print('Case #{}: {}'.format(case_num, ' '.join(map(str, iterable))))

def print_case_number(case_num, iterable):
	print('Case #{}: {}'.format(case_num, iterable))

def print_iterable(A):
	print(' '.join(A))

def ri():
	x = f.readline().strip()
	return int(x)

def ria():
	return [int(x) for x in f.readline().strip().split(' ')]

def rns():
	a = [x for x in f.readline().split(' ')]
	return (int(a[0]), a[1].strip())

def read_string():
	return list(f.readline().strip())
import string

def check_prime(n):
	i = 3
	while i * i <= n:
		if n % i == 0:
			return False
		i += 2
	return True

def solution(n):
	if n == 1:
		return 'FastestFinger'
	if n == 2:
		return 'Ashishgup'
	if n % 2 == 1:
		return 'Ashishgup'
	n //= 2
	if n % 2:
		if check_prime(n):
			return 'FastestFinger'
		else:
			return 'Ashishgup'
	while n % 2 == 0:
		n //= 2
	if n == 1:
		return 'FastestFinger'
	return 'Ashishgup'

def main():
	t = ri()
	for _ in range(t):
		n = ri()
		x = solution(n)
		if 'xrange' not in dir(__builtins__):
			print(x)
		else:
			(print >> output, str(x))
	if 'xrange' in dir(__builtins__):
		print(output.getvalue())
		output.close()
if 'xrange' in dir(__builtins__):
	import cStringIO
	output = cStringIO.StringIO()
main()


import sys
import math
input = sys.stdin.readline
getS = lambda : input().strip()
getN = lambda : int(input())
getList = lambda : list(map(int, input().split()))
getZList = lambda : [int(x) - 1 for x in input().split()]
INF = 10 ** 20
MOD = 998244353

def yn(bo):
	if bo:
		print('Ashishgup')
	else:
		print('FastestFinger')

def wari(n):
	res = []
	for i in range(2, 100000):
		if n % i == 0:
			while True:
				res.append(i)
				n //= i
				if n % i != 0:
					break
	if n != 1:
		res.append(n)
	return res

def solve():
	n = getN()
	if n == 1 or n == 4:
		yn(False)
		return
	elif n == 2 or n % 2 == 1:
		yn(True)
		return
	else:
		res = wari(n)
		ans = 0
		(ni, san) = (0, 0)
		for re in res:
			if re % 2 == 0:
				ni += 1
			else:
				san += 1
		if ni == 1 and san < 2:
			yn(False)
			return
		elif san == 0:
			yn(False)
			return
		else:
			yn(True)

def main():
	n = getN()
	for _ in range(n):
		solve()
main()


def isPrime(n):
	if n <= 1:
		return False
	if n <= 3:
		return True
	if n % 2 == 0 or n % 3 == 0:
		return False
	i = 5
	while i * i <= n:
		if n % i == 0 or n % (i + 2) == 0:
			return False
		i = i + 6
	return True

def help():
	n = int(input())
	t1 = bin(n)
	if n == 1:
		print('FastestFinger')
		return
	if n % 2 == 1:
		print('Ashishgup')
		return
	if t1.count('1') == 1:
		if n == 2:
			print('Ashishgup')
		else:
			print('FastestFinger')
	elif n % 4 == 0:
		print('Ashishgup')
	else:
		n = n // 2
		if isPrime(n):
			print('FastestFinger')
		else:
			print('Ashishgup')
for _ in range(int(input())):
	help()


import sys
from os import path
if path.exists('C:/Users/prana/Desktop/sublime/input.txt'):
	sys.stdin = open('C:/Users/prana/Desktop/sublime/input.txt', 'r')
	sys.stdout = open('C:/Users/prana/Desktop/sublime/output.txt', 'w')
import math

def isPrime(n):
	if n <= 1:
		return False
	if n <= 3:
		return True
	if n % 2 == 0 or n % 3 == 0:
		return False
	i = 5
	while i * i <= n:
		if n % i == 0 or n % (i + 2) == 0:
			return False
		i = i + 6
	return True

def solve():
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 != 0:
		print('Ashishgup')
	else:
		x = math.log10(n) / math.log10(2)
		y = math.ceil(x)
		z = math.floor(x)
		if y == z:
			print('FastestFinger')
		elif isPrime(n // 2):
			print('FastestFinger')
		else:
			print('Ashishgup')
T = 1
T = int(input())
for _ in range(1, T + 1):
	print('Case #', _, file=sys.stderr)
	solve()


from math import sqrt

def isprime(n):
	for i in range(2, int(sqrt(n)) + 1):
		if n % i == 0:
			return False
	return True
for _ in range(int(input())):
	n = int(input())
	if n == 1 or (n & n - 1 == 0 and n != 2) or (n & 1 == 0 and n // 2 >= 3 and isprime(n // 2)):
		print('FastestFinger')
	else:
		print('Ashishgup')


def isprime(n):
	for i in range(2, int(n ** 0.5) + 1):
		if n % i == 0:
			return False
	return True
for i in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2 or n % 2 == 1:
		print('Ashishgup')
	else:
		count = 0
		while n % 1 == 0 and n != 1:
			n /= 2
			count += 1
		if n == 1 and count > 2:
			print('FastestFinger')
		elif count > 2:
			print('Ashishgup')
		elif isprime(int(2 * n)):
			print('FastestFinger')
		else:
			print('Ashishgup')


def prime(num):
	if num > 1:
		for x in range(3, int(num ** 0.5) + 1, 2):
			if num % x == 0:
				return False
		return True
	return False
a = []
n = 4
while n < 1000000000:
	a.append(n)
	n *= 2
t = int(input())
for i in range(t):
	n = int(input())
	winner = 0
	if n == 1:
		winner = 1
	elif n % 2:
		winner = 0
	elif n // 2 % 2:
		if prime(n // 2):
			winner = 1
		else:
			winner = 0
	elif n in a:
		winner = 1
	else:
		winner = 0
	if winner:
		print('FastestFinger')
	else:
		print('Ashishgup')


def checkPrime(n):
	for i in range(2, min(n, 50000)):
		if n % i == 0:
			return False
	return True
t = int(input())
while t > 0:
	t -= 1
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 != 0:
		print('Ashishgup')
	elif n & n - 1 == 0:
		print('FastestFinger')
	elif n % 4 != 0 and checkPrime(n // 2):
		print('FastestFinger')
	else:
		print('Ashishgup')


t = int(input())
while t != 0:
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2 or n % 2 == 1:
		print('Ashishgup')
	else:
		divisor = []
		for i in range(2, n):
			if i ** 2 > n:
				break
			if n % i == 0:
				if i % 2 != 0:
					divisor.append(i)
				elif n / i % 2 != 0:
					divisor.append(n / i)
		if len(list(filter(lambda x: n / x != 2, divisor))) == 0:
			print('FastestFinger')
		else:
			print('Ashishgup')
	t -= 1


t = int(input())
fas = 'FastestFinger'
ash = 'Ashishgup'
for _ in range(t):
	n = int(input())
	if n == 1:
		print(fas)
	elif n == 2:
		print(ash)
	elif n % 2:
		print(ash)
	else:
		two = 1
		oth = 0
		if n % 4 == 0:
			two = 2
		c = n
		i = 2
		while i * i <= c:
			while c % i == 0:
				c = c // i
				if i % 2:
					oth += 1
				if oth >= 2:
					break
			i += 1
			if oth >= 2:
				break
		if c > 1 and oth < 2:
			oth += 1
		if two == 1 and oth == 1:
			print(fas)
		elif two == 1 and oth == 2:
			print(ash)
		elif two == 2 and oth == 0:
			print(fas)
		elif two == 2 and oth >= 1:
			print(ash)


def factorization(n):
	arr = []
	temp = n
	for i in range(2, int(-(-n ** 0.5 // 1)) + 1):
		if temp % i == 0:
			cnt = 0
			while temp % i == 0:
				cnt += 1
				temp //= i
			arr.append([i, cnt])
	if temp != 1:
		arr.append([temp, 1])
	if arr == []:
		arr.append([n, 1])
	return arr
import sys
input = sys.stdin.readline
t = int(input())
for _ in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	if n == 2:
		print('Ashishgup')
		continue
	if n % 2 == 1:
		print('Ashishgup')
		continue
	nn = factorization(n)
	cnt = 0
	two = 0
	for i in nn:
		if i[0] == 2:
			two = i[1]
		else:
			cnt += i[1]
	if cnt == 0:
		print('FastestFinger')
		continue
	elif two == 1:
		if cnt == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')
	else:
		print('Ashishgup')


from __future__ import division, print_function
from sys import stdin, stdout
import bisect
import math
import heapq
i_m = 9223372036854775807

def inin():
	return int(input())

def stin():
	return input()

def spin():
	return map(int, stin().split())

def lin():
	return list(map(int, stin().split()))

def matrix(n):
	return [list(map(int, input().split())) for i in range(n)]

def count2Dmatrix(i, list):
	return sum((c.count(i) for c in list))

def modinv(n, p):
	return pow(n, p - 2, p)

def GCD(x, y):
	x = abs(x)
	y = abs(y)
	if min(x, y) == 0:
		return max(x, y)
	while y:
		(x, y) = (y, x % y)
	return x

def isprime(n):
	for i in range(2, int(math.sqrt(n)) + 1):
		if n % i == 0:
			return False
	return True

def Divisors(n):
	l = []
	for i in range(1, int(math.sqrt(n) + 1)):
		if n % i == 0:
			if n // i == i:
				l.append(i)
			else:
				l.append(i)
				l.append(n // i)
	return l
prime = []

def SieveOfEratosthenes(n):
	global prime
	prime = [True for i in range(n + 1)]
	p = 2
	while p * p <= n:
		if prime[p] == True:
			for i in range(p * p, n + 1, p):
				prime[i] = False
		p += 1
	f = []
	for p in range(2, n):
		if prime[p]:
			f.append(p)
	return f
q = []

def dfs(n, d, v, c):
	global q
	v[n] = 1
	x = d[n]
	q.append(n)
	j = c
	for i in x:
		if i not in v:
			f = dfs(i, d, v, c + 1)
			j = max(j, f)
	return j
for _ in range(inin()):
	n = inin()
	if n == 1 or (n & n - 1 == 0 and n != 2) or (n & 1 == 0 and n // 2 >= 3 and isprime(n // 2)):
		print('FastestFinger')
	else:
		print('Ashishgup')


testcases = int(input())
dp = {}
dp[1] = False
dp[2] = True
dp[3] = True

def primes(n):
	primfac = []
	d = 2
	while d * d <= n:
		while n % d == 0:
			primfac.append(d)
			n //= d
		d += 1
	if n > 1:
		primfac.append(n)
	return primfac
for testcase in range(testcases):
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	if n == 2:
		print('Ashishgup')
		continue
	if n & 1 == 1:
		print('Ashishgup')
		continue
	arr = primes(n)
	oddprime = 0
	div = 1
	for i in arr:
		if i & 1 == 1:
			oddprime += 1
			div *= i
	if oddprime >= 1:
		diff = n // div
		if diff == 2 and oddprime == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')
	else:
		print('FastestFinger')


def notp(n):
	for i in range(2, int(n ** 0.5) + 1):
		if n % i == 0:
			return 1
	return 0
k = int(input())
(a, f) = ('Ashishgup', 'FastestFinger')
for i in range(k):
	n = int(input())
	if n == 2:
		print(a)
	elif n & n - 1 == 0:
		print(f)
	elif n % 2 == 0 and notp(n // 2) == 0:
		print(f)
	else:
		print(a)


import math

def isprime(n):
	for i in range(2, int(math.sqrt(n)) + 1):
		if n % i == 0:
			return 0
	return 1 if n != 1 else 0
t = int(input())
for _ in range(t):
	n = int(input())
	p = 0
	x = n
	while x % 2 == 0:
		p = p + 1
		x = x // 2
	if n == 1 or (2 ** p == n and p > 1) or (n % 2 == 0 and isprime(n // 2) and (n // 2 >= 3)):
		print('FastestFinger')
	else:
		print('Ashishgup')


import math
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n & n - 1 == 0:
		print('FastestFinger')
	elif n % 2 != 0:
		print('Ashishgup')
	else:
		c = 0
		for i in range(2, int(math.sqrt(n)) + 1):
			if n % i == 0:
				c += 1
		if c > 1:
			print('Ashishgup')
		else:
			print('FastestFinger')


import math as ma

def checkprime(num):
	if num == 1 or num == 0:
		return False
	if num == 2:
		return True
	if num % 2 == 0:
		return False
	for i in range(3, int(ma.sqrt(num)) + 1, 2):
		if num % i == 0:
			return False
	return True
t = int(input())
for _ in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 == 1 or n == 2:
		print('Ashishgup')
	else:
		m = n
		c = 0
		while m % 2 == 0:
			m = m // 2
			c += 1
		if m == 1:
			print('FastestFinger')
		elif n // m == 2:
			if checkprime(m):
				print('FastestFinger')
			else:
				print('Ashishgup')
		else:
			print('Ashishgup')


from collections import defaultdict
import math

def primeFactors(n):
	prime = defaultdict(int)
	while n % 2 == 0:
		prime[2] += 1
		n = n // 2
	for i in range(3, int(math.sqrt(n)) + 1, 2):
		while n % i == 0:
			prime[i] += 1
			n = n // i
	if n > 2:
		prime[n] += 1
	return prime
t = int(input())
for _ in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2:
		print('Ashishgup')
	else:
		p = primeFactors(n)
		awon = False
		for (k, v) in p.items():
			if k != 2:
				awon = True
		if p[2] < 2:
			awon = False
		if awon:
			print('Ashishgup')
		else:
			num = 0
			for (k, v) in p.items():
				if k != 2:
					num += v
			if num < 2:
				print('FastestFinger')
			else:
				print('Ashishgup')


import io
import os
from functools import lru_cache
from collections import Counter, defaultdict, deque
players = ['Ashishgup', 'FastestFinger']
pow2 = [1]
for i in range(33):
	pow2.append(pow2[-1] * 2)
assert pow2[-1] > 10 ** 9
pow2 = set(pow2)

def primeFactors(n):
	assert n >= 1
	factors = Counter()
	while n % 2 == 0:
		factors[2] += 1
		n //= 2
	x = 3
	while x * x <= n:
		while n % x == 0:
			factors[x] += 1
			n //= x
		x += 2
	if n != 1:
		factors[n] += 1
	return factors

@lru_cache(maxsize=None)
def solve(N):
	if N == 1:
		return 1
	if N == 2 or N % 2 == 1:
		return 0
	assert N % 2 == 0
	if N in pow2:
		return solve(N - 1) ^ 1
	who = solve(N - 1) ^ 1
	if who == 0:
		return 0
	factors = primeFactors(N)
	oneOdd = None
	for (k, v) in factors.items():
		if k != 2:
			oneOdd = k
			break
	divs = [N // 2 ** factors[2]]
	if divs[0] != oneOdd:
		assert divs[0] % oneOdd == 0
		divs.append(divs[0] // oneOdd)
	for d in divs:
		if solve(N // d) ^ 1 == 0:
			return 0
	return 1
input = io.BytesIO(os.read(0, os.fstat(0).st_size)).readline
T = int(input())
for t in range(T):
	(N,) = [int(x) for x in input().split()]
	ans = solve(N)
	print(players[ans])


t = int(input())
for _ in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	if n == 2:
		print('Ashishgup')
		continue
	if n % 2 == 1:
		print('Ashishgup')
		continue
	nn = n
	co = 0
	while nn % 2 == 0:
		nn //= 2
		co += 1
	if n == 2 ** co:
		print('FastestFinger')
		continue
	if co == 0:
		print('Ashishgup')
		continue
	if co > 1:
		print('Ashishgup')
		continue
	no = n // 2 ** co
	j = 2
	mi = 1
	while j * j <= no:
		mi = min(mi, no % j)
		j += 1
	if mi > 0:
		print('FastestFinger')
		continue
	print('Ashishgup')


import math

def prime(n):
	x = math.floor(math.sqrt(n))
	for i in range(2, x + 1):
		if n % i == 0:
			return False
	return True
ans = ['Ashishgup', 'FastestFinger']
t = int(input())
while t:
	n = int(input())
	if n == 1:
		print(ans[1])
	elif n == 2 or n % 2 == 1:
		print(ans[0])
	elif n & n - 1 == 0:
		print(ans[1])
	elif n % 4 != 0 and prime(n / 2):
		print(ans[1])
	else:
		print(ans[0])
	t -= 1


import math
t = int(input())
for i in range(t):
	n = int(input())
	ct = 0
	if n > 2:
		if n % 2 > 0:
			print('Ashishgup')
		else:
			while n % 2 == 0:
				n = int(n / 2)
				ct += 1
			if n == 1:
				print('FastestFinger')
			elif ct > 1:
				print('Ashishgup')
			else:
				j = 3
				flag = 0
				while j <= math.sqrt(n):
					if n % j == 0:
						flag = 1
						print('Ashishgup')
						break
					j = j + 2
				if flag == 0:
					print('FastestFinger')
	elif n == 1:
		print('FastestFinger')
	else:
		print('Ashishgup')


import math

def prime(x):
	if x < 4:
		return 1
	for i in range(2, int(x ** 0.5) + 3):
		if x % i == 0:
			return 0
	return 1
for ai in range(int(input())):
	n = int(input())
	a = 'Ashishgup'
	b = 'FastestFinger'
	if n == 1:
		print(b)
	elif n == 2:
		print(a)
	elif n % 2 == 1:
		print(a)
	else:
		c = 1
		x = math.log(n, 2)
		if x == int(x):
			print(b)
			continue
		while n % 2 == 0:
			n /= 2
			c *= 2
		if n == 1:
			print(b)
		elif c == 2:
			if prime(n) == 1:
				print(b)
			else:
				print(a)
		else:
			print(a)


import random

def gcd(a, b):
	if a == 0:
		return b
	if a < 0:
		return gcd(-a, b)
	while b > 0:
		c = a % b
		(a, b) = (b, c)
	return a

def mod_mul(a, b, n):
	result = 0
	while b > 0:
		if b & 1 > 0:
			result = (result + a) % n
		a = (a + a) % n
		b = b >> 1
	return result

def mod_exp(a, b, n):
	result = 1
	while b > 0:
		if b & 1 > 0:
			result = mod_mul(result, a, n)
		a = mod_mul(a, a, n)
		b = b >> 1
	return result

def MillerRabinPrimeCheck(n):
	if n in {2, 3, 5, 7, 11}:
		return True
	elif n == 1 or n % 2 == 0 or n % 3 == 0 or (n % 5 == 0) or (n % 7 == 0) or (n % 11 == 0):
		return False
	(k, u) = (0, n - 1)
	while not u & 1 > 0:
		k += 1
		u = u >> 1
	random.seed(0)
	s = 5
	for i in range(s):
		x = random.randint(2, n - 1)
		if x % n == 0:
			continue
		x = mod_exp(x, u, n)
		pre = x
		for j in range(k):
			x = mod_mul(x, x, n)
			if x == 1 and pre != 1 and (pre != n - 1):
				return False
			pre = x
		if x != 1:
			return False
		return True

def Pollard_rho(x, c):
	(i, k) = (1, 2)
	x0 = random.randint(0, x)
	y = x0
	while 1:
		i += 1
		x0 = (mod_mul(x0, x0, x) + c) % x
		d = gcd(y - x0, x)
		if d != 1 and d != x:
			return d
		if y == x0:
			return x
		if i == k:
			y = x0
			k += k

def PrimeFactorsListGenerator(n):
	result = []
	if n <= 1:
		return [1]
	if MillerRabinPrimeCheck(n):
		return [n]
	p = n
	while p >= n:
		p = Pollard_rho(p, random.randint(1, n - 1))
	result.extend(PrimeFactorsListGenerator(p))
	result.extend(PrimeFactorsListGenerator(n // p))
	return result
t = int(input())
for _ in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	if n % 2 == 1:
		print('Ashishgup')
		continue
	lis = PrimeFactorsListGenerator(n)
	cnt = 0
	cnt2 = 0
	for a in lis:
		if a % 2 == 1:
			cnt += 1
		if a == 2:
			cnt2 += 1
	if cnt == 1:
		if cnt2 != 1:
			print('Ashishgup')
		else:
			print('FastestFinger')
		continue
	elif cnt == 0:
		if cnt2 == 1:
			print('Ashishgup')
		else:
			print('FastestFinger')
	else:
		print('Ashishgup')


def isPrime(n):
	if n == 3:
		return True
	if n % 2 == 0 or n % 3 == 0:
		return False
	i = 5
	while i * i <= n:
		if n % i == 0 or n % (i + 2) == 0:
			return False
		i = i + 6
	return True

def isPT(x):
	return x and (not x & x - 1)
t = int(input())
while t:
	t -= 1
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n > 1 and n % 2 != 0:
		print('Ashishgup')
	elif isPT(n) and n > 2:
		print('FastestFinger')
	else:
		k = n / 2
		if isPrime(k) and k > 1:
			print('FastestFinger')
		else:
			print('Ashishgup')


from sys import *
from math import *
input = stdin.readline
for _ in range(int(input())):
	n = int(input())
	cn = 0
	while n > 1:
		if n == 2:
			cn += 1
			break
		if n % 2 == 0:
			k = n
			d = 0
			while k % 2 == 0:
				k = k // 2
				d += 1
			if k == 1:
				break
			else:
				if d == 1:
					for i in range(2, int(sqrt(k) + 1)):
						if k % i == 0 and i % 2 == 1:
							k = k // i
							break
				n = n // k
		elif n % 2 == 1:
			cn += 1
			break
		cn += 1
	if cn % 2 == 1:
		stdout.write('Ashishgup\n')
	else:
		stdout.write('FastestFinger\n')


import math
from sys import stdin, stdout

def get_int():
	return int(stdin.readline().strip())

def prime(n):
	for i in range(2, int(math.sqrt(n)) + 1):
		if n % i == 0:
			return False
	return True

def main():
	write = stdout.write
	t = get_int()
	for _ in range(t):
		n = get_int()
		win = 0
		if n == 1:
			win = 1
		if n > 2 and n % 2 == 0:
			x = math.log10(n) / math.log10(2)
			if x == int(x) or (n % 4 != 0 and prime(n / 2)):
				win = 1
		if win % 2 == 0:
			write('Ashishgup\n')
		else:
			write('FastestFinger\n')
	pass
main()


import sys
import heapq
import random
import collections
from functools import lru_cache
import math

@lru_cache(maxsize=None)
def prime_factors(nr):
	init = nr
	i = 2
	factors = []
	while i <= nr:
		if i > math.sqrt(nr):
			i = nr
		if nr % i == 0:
			factors.append(int(i))
			nr = nr / i
		elif i == 2:
			i = 3
		else:
			i = i + 2
	console(init, factors)
	return factors

@lru_cache(maxsize=None)
def solve(k):
	console('----- solving ------')
	console(k)
	if k == 1:
		return -1
	if k == 2:
		return 1
	if k % 2 == 1:
		return 1
	factors = prime_factors(k)
	if k // factors[-1] == 2:
		return -1
	if factors[-1] % 2 == 1:
		return 1
	return -1

def console(*args):
	print('\x1b[36m', *args, '\x1b[0m', file=sys.stderr)
	return
for case_num in range(int(input())):
	k = int(input())
	res = solve(k)
	if res == -1:
		print('FastestFinger')
	else:
		print('Ashishgup')


from math import sqrt
divisor_dict = {}

def mrange(start, stop, step):
	while start < stop:
		yield start
		start += step

def is_prime(num):
	if num == 2:
		return True
	if num < 2 or num % 2 == 0:
		return False
	return all((num % i for i in mrange(3, int(sqrt(num)) + 1, 2)))

def find_odd_divisor(n):
	odd_divisor = []
	odd_divisor.append(n)
	for i in range(2, int(n ** (1 / 2)) + 1):
		if n % i == 0:
			odd_divisor.append(int(i))
			odd_divisor.append(int(n // i))
	odd_divisor = [i for i in odd_divisor if i % 2 != 0]
	divisor_dict[n] = odd_divisor

def find_winner(n):
	current_player = 'Ashishgup'
	next_player = 'FastestFinger'
	while True:
		if n == 1:
			return next_player
		if n == 2:
			return current_player
		if n % 2 != 0:
			return current_player
		if not n in divisor_dict:
			find_odd_divisor(n)
		if n % 2 == 0:
			if len(divisor_dict[n]) > 0:
				if n % 4 == 0:
					return current_player
				else:
					x = n / 2
					if is_prime(x):
						return next_player
					else:
						return current_player
			else:
				return next_player
t = int(input())
t_input = []
for i in range(t):
	t_input.append(int(input()))
t_output = list(map(find_winner, t_input))
print(*t_output, sep='\n')


from sys import stdin, stdout
int_in = lambda : int(stdin.readline())
arr_in = lambda : [int(x) for x in stdin.readline().split()]
mat_in = lambda rows: [arr_in() for _ in range(rows)]
str_in = lambda : stdin.readline().strip()
out = lambda o: stdout.write('{}\n'.format(o))
arr_out = lambda o: out(' '.join(map(str, o)))
bool_out = lambda o: out('YES' if o else 'NO')
tests = lambda : range(1, int_in() + 1)
case_out = lambda i, o: out('Case #{}: {}'.format(i, o))

def divisors(n):
	i = 2
	result = []
	while i * i <= n:
		if n % i == 0:
			result.append(i)
			result.append(n // i)
		i += 1
	return result

def can_win_last_case(n):
	result = sorted(divisors(n), reverse=True)
	result = filter(lambda x: x % 2 == 1, result)
	result = list(result)
	if len(result) > 0:
		if n // result[0] > 2:
			return True
	if len(result) > 1:
		return True
	return False

def solve(n):
	if n == 1:
		return False
	if n % 2 == 1:
		return True
	if n == 2:
		return True
	return can_win_last_case(n)
for i in tests():
	n = int_in()
	out('Ashishgup' if solve(n) else 'FastestFinger')


import math
for i in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2:
		print('Ashishgup')
	else:
		s = 0
		if n / 2 % 2:
			for i in range(3, int(math.sqrt(n / 2)) + 1):
				if n / 2 % i == 0:
					s = 1
					break
			if s:
				print('Ashishgup')
			else:
				print('FastestFinger')
		else:
			while n % 2 == 0:
				n /= 2
			if n == 1:
				print('FastestFinger')
			else:
				print('Ashishgup')


import math

def Prime(n):
	if n & 1 == 0:
		return 2
	d = 3
	while d * d <= n:
		if n % d == 0:
			return d
		d = d + 2
	return 0
for _ in range(int(input())):
	n = int(input())
	if n == 1 or n == 4:
		print('FastestFinger')
		continue
	if n % 2 == 1 or n == 2:
		print('Ashishgup')
		continue
	if n % 4 == 0:
		val = math.log2(n)
		if val == int(val):
			print('FastestFinger')
		else:
			print('Ashishgup')
		continue
	val = n // 2
	if Prime(val) == 0:
		print('FastestFinger')
		continue
	print('Ashishgup')


import sys
input = sys.stdin.readline
import heapq
import copy
import math
import decimal

def inp():
	return int(input())

def inlt():
	return list(map(int, input().split()))

def insr():
	s = input()
	return list(s[:len(s) - 1])

def insr2():
	s = input()
	return s[:len(s) - 1]

def invr():
	return map(int, input().split())

def pr_list(a):
	print(*a, sep=' ')

def main():
	tests = inp()
	mod = 1000000007
	limit = 10 ** 18
	ans = 0
	start = {}
	for test in range(tests):
		n = inp()
		flag = 0
		F = 'FastestFinger'
		A = 'Ashishgup'
		if n == 1:
			print(F)
			continue
		elif n == 2:
			print(A)
			continue
		elif n % 2 == 1:
			print(A)
			continue
		even = 0
		while n % 2 == 0:
			even = even + 1
			n = n // 2
		if even >= 2 and n != 1:
			print(A)
			continue
		if n == 1:
			print(F)
			continue
		no_of_div = 0
		flag = 0
		for i in range(3, int(math.sqrt(n) + 1), 2):
			if n % i == 0:
				flag = 1
				break
		if flag == 0:
			print(F)
		else:
			print(A)
main()


import sys
input = sys.stdin.readline
inputr = lambda : input().rstrip('\n')
INF = 10 ** 18
from functools import lru_cache

@lru_cache(maxsize=None)
def f(n):
	if n == 1:
		return False
	elif n == 2:
		return True
	elif n % 2 == 1:
		return True
	for d in range(2, n):
		if d * d > n:
			break
		if n % d == 0:
			if d % 2 == 1 and (not f(n // d)):
				return True
			od = n // d
			if od % 2 == 1 and (not f(n // od)):
				return True
	return False
for _ in range(int(input())):
	n = int(input())
	print('Ashishgup' if f(n) else 'FastestFinger')


import sys
from math import sqrt
input = sys.stdin.readline
f = lambda : list(map(int, input().split()))

def isPrime(n):
	for i in range(2, int(sqrt(n)) + 1):
		if n % i == 0:
			return False
	return True
for _ in range(int(input())):
	n = int(input())
	if n == 1 or (n != 2 and bin(n).count('1') == 1) or (n % 2 == 0 and n // 2 >= 3 and isPrime(n // 2)):
		print('FastestFinger')
	else:
		print('Ashishgup')


def prime(num):
	i = 2
	while i * i <= num:
		if num % i == 0:
			return False
		i += 1
	return True
p0 = 'Ashishgup'
p1 = 'FastestFinger'
t = int(input())
for _ in range(t):
	num = int(input())
	turn = 0
	if num == 1:
		print(p1)
	elif num % 2 != 0:
		print(p0)
	elif num & num - 1 == 0 and num > 2:
		print(p1)
	elif prime(num // 2) and num != 2:
		print(p1)
	else:
		print(p0)


first = 'Ashishgup'
second = 'FastestFinger'

def check(x):
	if x <= 3:
		return x >= 2
	if x % 2 == 0 or x % 3 == 0:
		return False
	i = 5
	while i * i <= x:
		if x % i == 0 or x % (i + 2) == 0:
			return False
		i += 6
	return True

def solve():
	n = int(input())
	if n == 1:
		print(second)
		return
	if n % 2 == 1 or n == 2:
		print(first)
		return
	m = n
	while m % 2 == 0:
		m //= 2
	if n % 4 == 0:
		print(first if m > 1 else second)
		return
	print(second if check(m) else first)
for _ in range(int(input())):
	solve()


t = int(input())
import math
for _ in range(t):
	n = int(input())
	loose = True
	if n == 1:
		loose = True
	elif n % 2 == 1:
		loose = False
	elif n == 2:
		loose = False
	elif 2 ** int(math.log(n, 2)) == n:
		loose = True
	else:
		afterdiv = n / 2
		if afterdiv % 2 == 0:
			loose = False
		else:
			isPrime = True
			i = 2
			while i <= int(afterdiv ** 0.5) and isPrime:
				if afterdiv % i == 0:
					isPrime = False
				i += 1
			loose = isPrime
	if loose:
		print('FastestFinger')
	else:
		print('Ashishgup')


def p(n):
	while n > 4:
		n = n / 2
	if n == 4:
		return True
	else:
		return False

def q(n):
	if n % 2 == 1 or n == 2:
		return False
	n = int(n / 2)
	for i in range(2, int(n ** (1 / 2)) + 1):
		if n % i == 0:
			return False
	return True
for i in range(int(input())):
	n = int(input())
	if n == 1 or p(n) or q(n):
		print('FastestFinger')
	else:
		print('Ashishgup')


from math import inf as inf
from math import *
from collections import *
import sys
from itertools import permutations
input = sys.stdin.readline
t = int(input())
while t:
	t -= 1
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	if n == 2:
		print('Ashishgup')
		continue
	if bin(n)[2:].count('1') == 1:
		print('FastestFinger')
		continue
	if n % 2:
		print('Ashishgup')
		continue
	oddfac = set()
	for i in range(2, int(pow(n, 0.5)) + 1):
		if n % i == 0:
			if i % 2:
				oddfac.add(i)
			elif n // i % 2:
				oddfac.add(n // i)
	if len(oddfac) > 1:
		print('Ashishgup')
		continue
	else:
		for i in oddfac:
			p = i
		if n // p == 2:
			print('FastestFinger')
			continue
		else:
			print('Ashishgup')
			continue


import sys
import math

def prime_factors(n):
	factors = dict()
	for i in range(2, math.ceil(math.sqrt(n)) + 1):
		while n % i == 0:
			if i in factors:
				factors[i] += 1
			else:
				factors[i] = 1
			n = n // i
	if n > 2:
		factors[n] = 1
	return factors
input = sys.stdin.readline
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 == 1:
		print('Ashishgup')
	else:
		p = prime_factors(n)
		(e, o) = (0, 0)
		for f in p:
			if f % 2 == 1:
				o += p[f]
			else:
				e += p[f]
		if o == 0:
			if e > 1:
				print('FastestFinger')
			else:
				print('Ashishgup')
		elif o == 1:
			if e == 1:
				print('FastestFinger')
			else:
				print('Ashishgup')
		else:
			print('Ashishgup')


from math import log2, sqrt
ff = 'FastestFinger'
ag = 'Ashishgup'

def ip(x):
	for i in range(2, int(sqrt(x)) + 1):
		if x % i == 0:
			return False
	return True
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print(ff)
		continue
	elif n % 2 == 0:
		l2 = log2(n)
		l21 = int(l2)
		if l2 == l21 and l21 > 1:
			print(ff)
		elif ip(n // 2) and n // 2 >= 3:
			print(ff)
		else:
			print(ag)
	else:
		print(ag)


T = int(input())
F = 'FastestFinger'
A = 'Ashishgup'
while T:
	n = int(input())
	if n == 1:
		print(F)
	elif n == 2:
		print(A)
	elif n % 2 == 1:
		print(A)
	else:
		c = 0
		while n > 0 and n % 2 == 0:
			n = n // 2
			c = c + 1
		if n > 1:
			if c > 1:
				print(A)
			else:
				flag = True
				for i in range(3, int(n ** 0.5) + 1):
					if n % i == 0:
						flag = False
						break
				if flag:
					print(F)
				else:
					print(A)
		else:
			print(F)
	T = T - 1


def numbergame(n):
	if n % 2 == 1 and n != 1:
		return 'Ashishgup'
	elif n == 1:
		return 'FastestFinger'
	elif n == 2:
		return 'Ashishgup'
	else:
		s = n
		if n & n - 1 == 0:
			return 'FastestFinger'
		elif n // 2 % 2 == 1:
			isprime = True
			for i in range(3, min(n // 2, 50000)):
				if s % i == 0:
					isprime = False
					break
			if isprime:
				return 'FastestFinger'
			else:
				return 'Ashishgup'
		else:
			return 'Ashishgup'
t = int(input())
a = []
for i in range(t):
	a.append(int(input()))
for x in a:
	print(numbergame(x))


def solution():
	for t in range(int(input())):
		n = int(input())
		winner = 1
		if n == 1:
			pass
		elif n == 2 or n % 2 == 1:
			winner = 0
		elif n & n - 1 == 0:
			pass
		elif n % 4 == 2:
			if n % 6 == 0:
				if n / 6 == 1:
					pass
				else:
					winner = 0
			else:
				for i in range(3, n // 2 // 2 + 1, 2):
					if i > 25000:
						break
					elif n % i == 0:
						winner = 0
						break
		else:
			winner = 0
		print(['Ashishgup', 'FastestFinger'][winner])
solution()


def game(j):
	if j % 2 == 1 and j != 1 or j == 2:
		return 'Ashishgup'
	elif j == 1:
		return 'FastestFinger'
	else:
		for i in range(1, 40):
			if j % 2 ** i == 0:
				ni = i
		new = j // 2 ** ni
		if new == 1:
			return 'FastestFinger'
		else:
			if j // 2 % 2 == 1:
				n1 = j // 2
				for p in range(1, int(n1 ** (1 / 2)) + 1):
					if n1 % p == 0:
						n2 = p
				if n2 == 1:
					return 'FastestFinger'
			return 'Ashishgup'
t = int(input())
l = []
for i in range(t):
	n = int(input())
	l.append(n)
for j in l:
	print(game(j))


def prime(l):
	if l == 1:
		return False
	else:
		b = True
		for k in range(2, int(l ** (1 / 2)) + 1):
			if l % k == 0:
				b = False
		return b

def pow2(k):
	if k == 1:
		return 1
	elif k % 2 == 1:
		return 0
	else:
		return pow2(k // 2)

def check(m):
	if m == 1:
		return 0
	elif m == 2:
		return 1
	elif m == 4:
		return 0
	elif m % 2 == 1:
		return 1
	elif m % 4 == 0:
		if pow2(m) == 1:
			return 0
		else:
			return 1
	elif prime(m // 2) == True:
		return 0
	else:
		return 1
t = int(input())
for _ in range(t):
	k = int(input())
	if not check(k):
		print('FastestFinger')
	else:
		print('Ashishgup')


for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 != 0:
		print('Ashishgup')
	else:
		e = 0
		while n % 2 == 0:
			e += 1
			n //= 2
		i = 3
		c = 0
		while i * i <= n:
			while n % i == 0:
				c += 1
				n //= i
			i += 2
		if n > 2:
			c += 1
		if e > 1 and c > 0:
			print('Ashishgup')
		elif c > 1:
			print('Ashishgup')
		else:
			print('FastestFinger')


import math

def isp(n):
	for i in range(2, 1 + math.ceil(math.sqrt(n))):
		if n % i == 0:
			return False
	return True

def main():
	for _ in range(int(input())):
		n = int(input())
		s = set()
		if n % 2 == 1 and n != 1:
			print('Ashishgup')
		elif n == 1:
			print('FastestFinger')
		elif n == 2:
			print('Ashishgup')
		else:
			k = 0
			while n % 2 == 0:
				k += 1
				n = n // 2
			if k == 1:
				if n == 1:
					print('FastestFinger')
				elif not isp(n):
					print('Ashishgup')
				else:
					print('FastestFinger')
			elif n == 1:
				print('FastestFinger')
			else:
				print('Ashishgup')
main()


import math

def go(n):
	for i in range(3, int(math.sqrt(n) + 1), 2):
		if n % i == 0:
			return False
	return True
t = int(input())
for x in range(t):
	n = int(input())
	if n == 1 or n == 4:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 == 1:
		print('Ashishgup')
	else:
		n /= 2
		if n % 2 == 0:
			while n % 2 != 1:
				n //= 2
			if n != 1:
				print('Ashishgup')
			else:
				print('FastestFinger')
		elif go(n):
			print('FastestFinger')
		else:
			print('Ashishgup')


from math import *

def isPrime(x):
	i = 2
	ans = True
	while i <= sqrt(x):
		if x % i == 0:
			ans = False
			break
		i += 1
	return ans

def isDouble(x):
	while True:
		if x % 2 == 0:
			x //= 2
		elif x == 1:
			return True
		else:
			return False
t = int(input())
for i in range(t):
	n = int(input())
	if n == 1 or (n != 2 and isDouble(n) is True) or (n % 2 == 0 and isPrime(n // 2) is True and (n != 2)):
		print('FastestFinger')
	else:
		print('Ashishgup')


import sys
input = sys.stdin.buffer.readline
from math import log2

def I():
	return list(map(int, input().split()))

def isPrime(n):
	if n <= 1:
		return False
	if n <= 3:
		return True
	if n % 2 == 0 or n % 3 == 0:
		return False
	i = 5
	while i * i <= n:
		if n % i == 0 or n % (i + 2) == 0:
			return False
		i = i + 6
	return True

def sieve(n):
	a = [1] * n
	for i in range(2, n):
		if a[i]:
			for j in range(i * i, n, i):
				a[j] = 0
	return a

def calc(n):
	c = 0
	while True:
		if n % 2:
			break
		c += 1
		n //= 2
	return c
for __ in range(int(input())):
	n = int(input())
	ans = ['Ashishgup', 'FastestFinger']
	f = 0
	if n == 1:
		f = 1
	elif n == 2:
		f = 0
	elif n % 2:
		f = 0
	elif calc(n) == 1:
		if isPrime(n // 2):
			f = 1
		else:
			f = 0
	elif 2 ** calc(n) == n:
		f = 1
	else:
		f = 0
	print(ans[f])


from sys import stdin
input = lambda : stdin.readline().strip()
from math import ceil, sqrt, gcd
for _ in range(int(input())):
	n = int(input())
	l = []
	x = n
	a = 2
	ans = ['Ashishgup', 'FastestFinger']
	if n > 1:
		while x > 1 and a <= sqrt(n):
			if x % a == 0:
				l.append(a)
				x = x // a
			else:
				a += 1
		if x > 1:
			l.append(x)
		a = 0
		while n > 1:
			if n % 2 != 0:
				break
			elif len(l) > 0:
				z = 1
				e = []
				t = 1
				for i in l:
					if i % 2 == 0:
						e.append(i)
					else:
						z *= i
						t = i
				if z == 1:
					n -= 1
					a += 1
					break
				elif len(e) > 1:
					n = n // z
					l = list(e)
				else:
					z = z // t
					if z > 1:
						n = n // z
						l = list(e)
						l.append(t)
					else:
						n = n // t
						l = list(e)
			else:
				n -= 1
				a += 1
				break
			a += 1
		if n != 1:
			print(ans[a % 2])
		else:
			print(ans[(a + 1) % 2])
	else:
		print(ans[1])


from __future__ import division, print_function
import os
import sys
from io import BytesIO, IOBase
if sys.version_info[0] < 3:
	from __builtin__ import xrange as range
	from future_builtins import ascii, filter, hex, map, oct, zip
BUFSIZE = 8192

class FastIO(IOBase):
	newlines = 0

	def __init__(self, file):
		self._fd = file.fileno()
		self.buffer = BytesIO()
		self.writable = 'x' in file.mode or 'r' not in file.mode
		self.write = self.buffer.write if self.writable else None

	def read(self):
		while True:
			b = os.read(self._fd, max(os.fstat(self._fd).st_size, BUFSIZE))
			if not b:
				break
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines = 0
		return self.buffer.read()

	def readline(self):
		while self.newlines == 0:
			b = os.read(self._fd, max(os.fstat(self._fd).st_size, BUFSIZE))
			self.newlines = b.count(b'\n') + (not b)
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines -= 1
		return self.buffer.readline()

	def flush(self):
		if self.writable:
			os.write(self._fd, self.buffer.getvalue())
			(self.buffer.truncate(0), self.buffer.seek(0))

class IOWrapper(IOBase):

	def __init__(self, file):
		self.buffer = FastIO(file)
		self.flush = self.buffer.flush
		self.writable = self.buffer.writable
		self.write = lambda s: self.buffer.write(s.encode('ascii'))
		self.read = lambda : self.buffer.read().decode('ascii')
		self.readline = lambda : self.buffer.readline().decode('ascii')

def print(*args, **kwargs):
	(sep, file) = (kwargs.pop('sep', ' '), kwargs.pop('file', sys.stdout))
	at_start = True
	for x in args:
		if not at_start:
			file.write(sep)
		file.write(str(x))
		at_start = False
	file.write(kwargs.pop('end', '\n'))
	if kwargs.pop('flush', False):
		file.flush()
if sys.version_info[0] < 3:
	(sys.stdin, sys.stdout) = (FastIO(sys.stdin), FastIO(sys.stdout))
else:
	(sys.stdin, sys.stdout) = (IOWrapper(sys.stdin), IOWrapper(sys.stdout))
from math import sqrt, floor, factorial, gcd, log
from collections import deque, Counter, defaultdict
from itertools import permutations, combinations
from math import gcd
from bisect import bisect
input = lambda : sys.stdin.readline().rstrip('\r\n')
read = lambda : list(map(int, input().strip().split(' ')))

def chk_prime(n):
	for i in range(2, int(sqrt(n) + 1)):
		if n % i == 0:
			return False
	return True

def p_factors(n):
	dic = defaultdict(int)
	for i in range(2, int(sqrt(n) + 1)):
		if n % i == 0:
			c = 0
			while n % i == 0:
				c += 1
				n //= i
			dic[i] = c
	if n > 1:
		dic[n] = 1
	return dic

def solve():
	for _ in range(int(input())):
		n = int(input())
		i = 1
		ans = ['Ashishgup', 'FastestFinger']
		while n > 1:
			if n % 2 == 0:
				dic = p_factors(n)
				facts = sorted(dic.keys())
				if len(facts) == 1:
					n -= 1
				elif dic[2] == 1:
					if len(facts) == 2 and dic[facts[1]] == 1:
						n -= 1
					else:
						n *= facts[1]
						for i in facts[1:]:
							n //= i ** dic[i]
				else:
					for i in facts[1:]:
						n //= i ** dic[i]
			else:
				n //= n
			i += 1
		print(ans[i % 2])
solve()


def perfect_pow(n):
	n = n >> 2
	ind = 0
	while n > 0:
		if n % 2:
			if ind:
				return False
			else:
				ind = 1
		n = n >> 1
	return True

def is_half_prime(n):
	n = n >> 1
	for i in range(2, int(n ** 0.5) + 1):
		if n % i == 0:
			return False
	return True
t = int(input())
while t:
	t -= 1
	n = int(input())
	if n % 2:
		if n == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')
	elif n == 2:
		print('Ashishgup')
	elif n % 4:
		if not is_half_prime(n):
			print('Ashishgup')
		else:
			print('FastestFinger')
	elif perfect_pow(n):
		print('FastestFinger')
	else:
		print('Ashishgup')


import math
import heapq, bisect
import sys
from collections import deque, defaultdict
from fractions import Fraction
mod = 10 ** 9 + 7
mod1 = 998244353
import os
import sys
from io import BytesIO, IOBase
BUFSIZE = 8192

class FastIO(IOBase):
	newlines = 0

	def __init__(self, file):
		self._fd = file.fileno()
		self.buffer = BytesIO()
		self.writable = 'x' in file.mode or 'r' not in file.mode
		self.write = self.buffer.write if self.writable else None

	def read(self):
		while True:
			b = os.read(self._fd, max(os.fstat(self._fd).st_size, BUFSIZE))
			if not b:
				break
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines = 0
		return self.buffer.read()

	def readline(self):
		while self.newlines == 0:
			b = os.read(self._fd, max(os.fstat(self._fd).st_size, BUFSIZE))
			self.newlines = b.count(b'\n') + (not b)
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines -= 1
		return self.buffer.readline()

	def flush(self):
		if self.writable:
			os.write(self._fd, self.buffer.getvalue())
			(self.buffer.truncate(0), self.buffer.seek(0))

class IOWrapper(IOBase):

	def __init__(self, file):
		self.buffer = FastIO(file)
		self.flush = self.buffer.flush
		self.writable = self.buffer.writable
		self.write = lambda s: self.buffer.write(s.encode('ascii'))
		self.read = lambda : self.buffer.read().decode('ascii')
		self.readline = lambda : self.buffer.readline().decode('ascii')
(sys.stdin, sys.stdout) = (IOWrapper(sys.stdin), IOWrapper(sys.stdout))
input = lambda : sys.stdin.readline().rstrip('\r\n')

class SegmentTree1:

	def __init__(self, data, default=9999999, func=lambda a, b: a | b):
		self._default = default
		self._func = func
		self._len = len(data)
		self._size = _size = 1 << (self._len - 1).bit_length()
		self.data = [default] * (2 * _size)
		self.data[_size:_size + self._len] = data
		for i in reversed(range(_size)):
			self.data[i] = func(self.data[i + i], self.data[i + i + 1])

	def __delitem__(self, idx):
		self[idx] = self._default

	def __getitem__(self, idx):
		return self.data[idx + self._size]

	def __setitem__(self, idx, value):
		idx += self._size
		self.data[idx] = value
		idx >>= 1
		while idx:
			self.data[idx] = self._func(self.data[2 * idx], self.data[2 * idx + 1])
			idx >>= 1

	def __len__(self):
		return self._len

	def query(self, start, stop):
		if start == stop:
			return self.__getitem__(start)
		stop += 1
		start += self._size
		stop += self._size
		res = self._default
		while start < stop:
			if start & 1:
				res = self._func(res, self.data[start])
				start += 1
			if stop & 1:
				stop -= 1
				res = self._func(res, self.data[stop])
			start >>= 1
			stop >>= 1
		return res

	def __repr__(self):
		return 'SegmentTree({0})'.format(self.data)

class SegmentTree:

	def __init__(self, data, default=0, func=lambda a, b: a * a + b * b):
		self._default = default
		self._func = func
		self._len = len(data)
		self._size = _size = 1 << (self._len - 1).bit_length()
		self.data = [default] * (2 * _size)
		self.data[_size:_size + self._len] = data
		for i in reversed(range(_size)):
			self.data[i] = func(self.data[i + i], self.data[i + i + 1])

	def __delitem__(self, idx):
		self[idx] = self._default

	def __getitem__(self, idx):
		return self.data[idx + self._size]

	def __setitem__(self, idx, value):
		idx += self._size
		self.data[idx] = value
		idx >>= 1
		while idx:
			self.data[idx] = self._func(self.data[2 * idx], self.data[2 * idx + 1])
			idx >>= 1

	def __len__(self):
		return self._len

	def query(self, start, stop):
		if start == stop:
			return self.__getitem__(start)
		stop += 1
		start += self._size
		stop += self._size
		res = self._default
		while start < stop:
			if start & 1:
				res = self._func(res, self.data[start])
				start += 1
			if stop & 1:
				stop -= 1
				res = self._func(res, self.data[stop])
			start >>= 1
			stop >>= 1
		return res

	def __repr__(self):
		return 'SegmentTree({0})'.format(self.data)

class Factorial:

	def __init__(self, MOD):
		self.MOD = MOD
		self.factorials = [1, 1]
		self.invModulos = [0, 1]
		self.invFactorial_ = [1, 1]

	def calc(self, n):
		if n <= -1:
			print('Invalid argument to calculate n!')
			print('n must be non-negative value. But the argument was ' + str(n))
			exit()
		if n < len(self.factorials):
			return self.factorials[n]
		nextArr = [0] * (n + 1 - len(self.factorials))
		initialI = len(self.factorials)
		prev = self.factorials[-1]
		m = self.MOD
		for i in range(initialI, n + 1):
			prev = nextArr[i - initialI] = prev * i % m
		self.factorials += nextArr
		return self.factorials[n]

	def inv(self, n):
		if n <= -1:
			print('Invalid argument to calculate n^(-1)')
			print('n must be non-negative value. But the argument was ' + str(n))
			exit()
		p = self.MOD
		pi = n % p
		if pi < len(self.invModulos):
			return self.invModulos[pi]
		nextArr = [0] * (n + 1 - len(self.invModulos))
		initialI = len(self.invModulos)
		for i in range(initialI, min(p, n + 1)):
			next = -self.invModulos[p % i] * (p // i) % p
			self.invModulos.append(next)
		return self.invModulos[pi]

	def invFactorial(self, n):
		if n <= -1:
			print('Invalid argument to calculate (n^(-1))!')
			print('n must be non-negative value. But the argument was ' + str(n))
			exit()
		if n < len(self.invFactorial_):
			return self.invFactorial_[n]
		self.inv(n)
		nextArr = [0] * (n + 1 - len(self.invFactorial_))
		initialI = len(self.invFactorial_)
		prev = self.invFactorial_[-1]
		p = self.MOD
		for i in range(initialI, n + 1):
			prev = nextArr[i - initialI] = prev * self.invModulos[i % p] % p
		self.invFactorial_ += nextArr
		return self.invFactorial_[n]

class Combination:

	def __init__(self, MOD):
		self.MOD = MOD
		self.factorial = Factorial(MOD)

	def ncr(self, n, k):
		if k < 0 or n < k:
			return 0
		k = min(k, n - k)
		f = self.factorial
		return f.calc(n) * f.invFactorial(max(n - k, k)) * f.invFactorial(min(k, n - k)) % self.MOD

def powm(a, n, m):
	if a == 1 or n == 0:
		return 1
	if n % 2 == 0:
		s = powm(a, n // 2, m)
		return s * s % m
	else:
		return a * powm(a, n - 1, m) % m

def sort_list(list1, list2):
	zipped_pairs = zip(list2, list1)
	z = [x for (_, x) in sorted(zipped_pairs)]
	return z

def product(l):
	por = 1
	for i in range(len(l)):
		por *= l[i]
	return por

def binarySearchCount(arr, n, key):
	left = 0
	right = n - 1
	count = 0
	while left <= right:
		mid = int((right + left) / 2)
		if arr[mid] <= key:
			count = mid + 1
			left = mid + 1
		else:
			right = mid - 1
	return count

def countdig(n):
	c = 0
	while n > 0:
		n //= 10
		c += 1
	return c

def countGreater(arr, n, k):
	l = 0
	r = n - 1
	leftGreater = n
	while l <= r:
		m = int(l + (r - l) / 2)
		if arr[m] > k:
			leftGreater = m
			r = m - 1
		else:
			l = m + 1
	return n - leftGreater
for ik in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	elif n % 2 == 1:
		print('Ashishgup')
		continue
	elif n == 2:
		print('Ashishgup')
		continue
	c = []
	k = n
	for i in range(2, int(n ** 0.5) + 1):
		if n % i == 0:
			while n % i == 0:
				n //= i
				if i % 2 == 1:
					c.append(i)
	if n > 1:
		if n % 2 == 1:
			c.append(n)
	lr = len(c)
	if lr == 0:
		print('FastestFinger')
	elif lr == 1 and product(c) * 2 == k:
		print('FastestFinger')
	else:
		print('Ashishgup')


def main():
	for t in range(int(input())):
		n = int(input())
		if n == 1:
			flag = False
		else:
			flag = True
		if n % 2 == 0:
			ans = 0
			m = n
			while m % 2 == 0:
				m = m / 2
				ans += 1
			if ans > 1 and n // 2 ** ans != 1 or n == 2:
				flag = True
			elif ans > 1:
				flag = False
			else:
				n = n // 2
				m = int(n ** 0.5)
				s = set()
				for i in range(1, m + 1):
					if n % i == 0:
						if i not in s:
							s.add(i)
						if n // i not in s:
							s.add(i)
				if len(s) <= 1:
					flag = False
		if not flag:
			print('FastestFinger')
		else:
			print('Ashishgup')
main()


import sys
I = sys.stdin.readline
ans = ''

def isprime(n):
	for i in range(2, int(n ** 0.5) + 1):
		if n % i == 0:
			return False
	return True

def ispowertwo(n):
	return not n & n - 1
for _ in range(int(I())):
	n = int(I())
	if n == 1:
		ans += 'FastestFinger\n'
	elif n == 2:
		ans += 'Ashishgup\n'
	elif n % 2 != 0:
		ans += 'Ashishgup\n'
	elif ispowertwo(n):
		ans += 'FastestFinger\n'
	else:
		x = n // 2
		if isprime(x):
			ans += 'FastestFinger\n'
		else:
			ans += 'Ashishgup\n'
print(ans)


t = int(input())
for i in range(t):
	n = int(input())
	if n % 2 == 1 and n > 1:
		print('Ashishgup')
	elif n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	else:
		m = n
		c_even = 0
		odd = 0
		while m % 2 == 0:
			m = m // 2
			c_even += 1
		odd = m
		if odd == 1:
			print('FastestFinger')
		elif c_even > 1:
			print('Ashishgup')
		else:
			is_prime = True
			delete = 3
			maxi = int(odd ** 0.5)
			while is_prime and delete <= maxi:
				if odd % delete == 0:
					is_prime = False
				delete += 2
			if is_prime:
				print('FastestFinger')
			else:
				print('Ashishgup')


import math

def factorize(n):
	count = 0
	l = []
	while (n % 2 > 0) == False:
		n >>= 1
		count += 1
	if count > 0:
		l.append([2, count])
	for i in range(3, int(math.sqrt(n)) + 1):
		count = 0
		while n % i == 0:
			count += 1
			n = int(n / i)
		if count > 0:
			l.append([i, count])
		i += 2
	if n > 2:
		l.append([n, 1])
	return l
t = int(input())
for i in range(t):
	n = int(input())
	if n % 2 or n == 2:
		if n != 1:
			print('Ashishgup')
		else:
			print('FastestFinger')
	else:
		l = factorize(n)
		l.sort()
		if len(l) > 1:
			if l[0][1] > 1:
				print('Ashishgup')
			else:
				c = 0
				for i in range(1, len(l)):
					c += l[i][1]
					if c > 1:
						break
				if c > 1:
					print('Ashishgup')
				else:
					print('FastestFinger')
		else:
			print('FastestFinger')


import math
T = int(input())
for t in range(T):
	n = int(input())
	if n > 1 and n % 2 == 1 or n == 2:
		print('Ashishgup')
	elif n == 1 or n == 4:
		print('FastestFinger')
	else:
		cnt1 = 0
		while n % 2 == 0:
			n //= 2
			cnt1 += 1
		cnt2 = 0
		x = 3
		m = int(math.sqrt(n)) + 1
		while x <= 2 * m and n > 1:
			if n % x == 0:
				n //= x
				cnt2 += 1
			else:
				x += 2
		if n > 1:
			cnt2 += 1
		if cnt1 > 1 and cnt2 > 0 or (cnt1 == 1 and cnt2 > 1):
			print('Ashishgup')
		else:
			print('FastestFinger')


import math

def factors(n):
	count = 0
	even_count = False
	x = n
	ans = False
	if n % 2 == 0 and n % 4 != 0:
		even_count = True
		n = n // 2
	if even_count:
		for i in range(2, math.ceil(n ** 0.5) + 1, 1):
			if n % i == 0:
				break
		else:
			ans = True
	return (ans, even_count)

def powerof2(n):
	while n % 2 == 0:
		n = n // 2
	if n == 1:
		return True
	else:
		return False
t = int(input(''))
while t > 0:
	n = int(input(''))
	flag = 0
	if n == 1:
		flag = 1
	elif n == 2:
		flag = 0
	elif n % 2 == 1:
		flag = 0
	elif powerof2(n):
		flag = 1
	elif factors(n)[0] and factors(n)[1]:
		flag = 1
	else:
		flag = 0
	if flag == 0:
		print('Ashishgup')
	else:
		print('FastestFinger')
	t -= 1


def solve(n):
	if n == 1:
		return 'FastestFinger'
	elif n == 2 or n % 2 == 1:
		return 'Ashishgup'
	else:
		for i in range(3, int(n ** 0.5) + 1):
			if n % i == 0:
				if i % 2 == 1 or n // i % 2 == 1:
					return 'Ashishgup'
	return 'FastestFinger'

def sol(n):
	if n == 1:
		return False
	if n == 2 or n % 2 == 1:
		return True
	p2 = 0
	while n % 2 == 0:
		n //= 2
		p2 += 1
	if n == 1:
		return False
	if p2 > 1:
		return True
	i = 2
	while i * i <= n:
		if n % i == 0:
			return True
		i += 1
	return False
t = int(input())
for _ in range(t):
	n = int(input())
	print('Ashishgup' if sol(n) else 'FastestFinger')


from math import sqrt

def primeFactors(n):
	ans = []
	while n % 2 == 0:
		ans += (2,)
		n = n / 2
	for i in range(3, int(sqrt(n)) + 1, 2):
		while n % i == 0:
			ans += (i,)
			n = n / i
	if n > 2:
		ans += (n,)
	return ans
T = int(input())
for _ in range(T):
	N = int(input())
	if N == 1:
		print('FastestFinger')
	elif N == 2:
		print('Ashishgup')
	elif N % 2 == 1:
		print('Ashishgup')
	else:
		factors = primeFactors(N)
		impair = False
		other = False
		for elt in factors[1:]:
			if elt % 2 == 1:
				if not impair:
					impair = True
				else:
					other = True
			else:
				other = True
		if other and impair:
			print('Ashishgup')
		else:
			print('FastestFinger')


import math
t = int(input())
for _ in range(t):
	n = int(input())
	d = [1]
	for i in range(2, int(math.sqrt(n)) + 1):
		if n % i == 0:
			d.append(i)
	k = False
	for i in range(1, n + 1):
		if n == 2 ** i:
			k = True
			break
		if n < 2 ** i:
			break
	if n == 1:
		print('FastestFinger')
	elif len(d) == 1:
		print('Ashishgup')
	elif len(d) == 2 and n % 2 == 0:
		print('FastestFinger')
	elif k:
		print('FastestFinger')
	else:
		print('Ashishgup')


def prime(N):
	for i in range(2, int(N ** (1 / 2)) + 1):
		if N % i == 0:
			return 0
	return 1
for _ in range(int(input())):
	N = int(input())
	if N == 1:
		print('FastestFinger')
	elif N == 2:
		print('Ashishgup')
	elif N % 2 == 1:
		print('Ashishgup')
	elif N & N - 1 == 0:
		print('FastestFinger')
	elif prime(N):
		print('Ashishgup')
	elif prime(N // 2):
		print('FastestFinger')
	else:
		print('Ashishgup')


import sys
from functools import lru_cache, cmp_to_key
from heapq import merge, heapify, heappop, heappush
from math import *
from collections import defaultdict as dd, deque, Counter as C
from itertools import combinations as comb, permutations as perm
from bisect import bisect_left as bl, bisect_right as br, bisect
from time import perf_counter
from fractions import Fraction
sys.setrecursionlimit(int(pow(10, 6)))
mod = int(pow(10, 9) + 7)
mod2 = 998244353

def data():
	return sys.stdin.readline().strip()

def out(*var, end='\n'):
	sys.stdout.write(' '.join(map(str, var)) + end)

def l():
	return list(sp())

def sl():
	return list(ssp())

def sp():
	return map(int, data().split())

def ssp():
	return map(str, data().split())

def l1d(n, val=0):
	return [val for i in range(n)]

def l2d(n, m, val=0):
	return [l1d(n, val) for j in range(m)]

def seive():
	prime = [1 for i in range(10 ** 6 + 1)]
	prime[0] = 0
	prime[1] = 0
	for i in range(10 ** 6 + 1):
		if prime[i]:
			for j in range(2 * i, 10 ** 6 + 1, i):
				prime[j] = 0
	return prime
prime = seive()
for _ in range(l()[0]):
	n = l()[0]
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 == 1:
		print('Ashishgup')
	else:
		x = n
		while x % 2 == 0:
			x //= 2
		if x == 1:
			print('FastestFinger')
		elif n // 2 % 2 == 0:
			print('Ashishgup')
		else:
			k = 0
			for i in range(3, 10 ** 5):
				if prime[i] and x % i == 0:
					while x % i == 0:
						x //= i
						k += 1
			if x != 1:
				k += 1
			if k <= 1:
				print('FastestFinger')
			else:
				print('Ashishgup')


import math
for _ in range(int(input())):
	n = int(input())
	dev = []
	if n % 2 != 0:
		if n == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')
	elif n == 2:
		print('Ashishgup')
	else:
		for i in range(1, int(math.sqrt(n)) + 1):
			if n % i == 0:
				if i == n / i:
					dev.append(i)
				else:
					dev.append(i)
					dev.append(n / i)
		dam = 0
		for ele in dev:
			if ele % 2 != 0 and ele > 1:
				dam += 1
		if dam == 0:
			print('FastestFinger')
		elif n % 4 == 0:
			print('Ashishgup')
		else:
			kk = n / 2
			l = 0
			for i in range(1, int(math.sqrt(kk)) + 1):
				if kk % i == 0:
					if i == kk / i:
						l += 1
					else:
						l += 2
			if l == 2:
				print('FastestFinger')
			else:
				print('Ashishgup')


from sys import stdin
input = stdin.readline
gamers = ['Ashishgup', 'FastestFinger']

def isPrime(n):
	if n == 1:
		return False
	if n == 2:
		return True
	for i in range(2, int(n ** 0.5) + 1):
		if n % i == 0:
			return False
	return True
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print(gamers[1])
	elif n == 2:
		print(gamers[0])
	elif n % 2 == 1:
		print(gamers[0])
	else:
		t = 0
		while n % 2 == 0:
			t += 1
			n //= 2
		if n == 1:
			print(gamers[1])
		elif t == 1:
			if isPrime(n):
				print(gamers[1])
			else:
				print(gamers[0])
		else:
			print(gamers[0])


for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 != 0 or n == 2:
		print('Ashishgup')
	else:
		k = 0
		while n % 2 == 0:
			k += 1
			n = n // 2
		if k > 1 and n > 1:
			print('Ashishgup')
		elif k > 1 and n == 1:
			print('FastestFinger')
		else:
			ans = True
			for i in range(3, int(n ** 0.5) + 1, 2):
				if n % i == 0:
					ans = False
			if ans:
				print('FastestFinger')
			else:
				print('Ashishgup')


from math import ceil, sqrt

def sieve(n):
	sqrtn = ceil(sqrt(n))
	prime = [True for _ in range(n + 1)]
	p = 2
	while p <= sqrtn:
		if prime[p]:
			for i in range(p * 2, n + 1, p):
				prime[i] = False
		p += 1
	prime[0] = False
	prime[1] = False
	return [i for (i, x) in enumerate(prime) if x]
primes = sieve(10 ** 5)
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2:
		print('Ashishgup')
	else:
		hp = 0
		while not n % 2:
			n //= 2
			hp += 1
		if hp == 1:
			if n == 1:
				print('Ashishgup')
			elif n in primes or not len(list(filter(lambda o: not n % o, primes))):
				print('FastestFinger')
			else:
				print('Ashishgup')
		elif n == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')


def a():
	print('Ashishgup')

def f():
	print('FastestFinger')
N = 50000

def isPrime(n):
	for i in range(2, min(N, n)):
		if n % i == 0:
			return False
	return True
for i in range(int(input())):
	n = int(input())
	lose = n == 1
	if n % 2 == 0 and n > 2:
		if n & n - 1 == 0:
			lose = True
		elif n % 4 != 0 and isPrime(n // 2):
			lose = True
	if lose:
		f()
	else:
		a()


import math

def primeFactors(n):
	count_odd = 0
	count_even = 0
	while n % 2 == 0:
		n = n / 2
		count_even += 1
	for i in range(3, int(math.sqrt(n)) + 1, 2):
		while n % i == 0:
			count_odd += 1
			n = n / i
	if n > 2:
		count_odd += 1
	return (count_even, count_odd)
t = int(input())
for i in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 == 1:
		print('Ashishgup')
	elif n == 2:
		print('Ashishgup')
	elif n & n - 1 == 0:
		print('FastestFinger')
	else:
		(even_factors, odd_factors) = primeFactors(n)
		if even_factors > 1:
			print('Ashishgup')
		elif odd_factors == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')


import math

def primeFactors(num):
	lis = []
	while num % 2 == 0:
		lis.append(2)
		num = num // 2
	for i in range(3, int(math.sqrt(num)) + 1, 2):
		while num % i == 0:
			lis.append(i)
			num = num // i
	if num > 2:
		lis.append(num)
	return lis
t = int(input())
for _ in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 != 0:
		print('Ashishgup')
	else:
		temp = n
		a1 = 1
		x = primeFactors(n)
		odd = 0
		even = 0
		for i in x:
			if i % 2 != 0:
				odd += 1
			else:
				even += 1
		if odd == 0:
			print('FastestFinger')
		elif odd == 1:
			if even == 1:
				print('FastestFinger')
			else:
				print('Ashishgup')
		else:
			print('Ashishgup')


def prime_factoring(n):
	divisor = 2
	factors = []
	while divisor * divisor <= n:
		if n % divisor:
			divisor += 1
		else:
			n //= divisor
			factors.append(divisor)
	if n > 1:
		factors.append(n)
	return factors
a = input()
for x in range(int(a)):
	b = input()
	if int(b) == 1:
		print('FastestFinger')
	elif int(b) % 2 != 0 or int(b) == 2:
		print('Ashishgup')
	else:
		list1 = prime_factoring(int(b))
		tag = 0
		tag1 = 0
		for i in list1:
			if i % 2 == 0:
				tag += 1
			else:
				tag1 += 1
		if tag == 1 and tag1 == 1:
			print('FastestFinger')
		elif tag == len(list1):
			print('FastestFinger')
		else:
			print('Ashishgup')


import math

def prime(n):
	for i in range(2, int(math.sqrt(n)) + 1):
		if n % i == 0:
			return False
	return True
T = int(input())
for _ in range(T):
	n = int(input())
	count = 0
	if n == 1:
		print('FastestFinger')
	elif n % 2 != 0 or n == 2:
		print('Ashishgup')
	elif math.log(n, 2) % 1 <= 0.0001:
		print('FastestFinger')
	elif n % 4 == 0:
		print('Ashishgup')
	elif prime(n / 2):
		print('FastestFinger')
	else:
		print('Ashishgup')


import math
for _ in range(int(input())):
	n = int(input())
	flag = False
	if n == 1:
		print('FastestFinger')
		flag = True
	elif n % 2 == 1 or n == 2:
		print('Ashishgup')
		flag = True
	i = 3
	while flag != True and i * i <= n:
		if n % i == 0:
			if i % 2 == 1 or n // i % 2 == 1:
				print('Ashishgup')
				flag = True
		i += 1
	if flag == False:
		print('FastestFinger')


import math

def num_odd(n):
	odd = []
	for j in range(2, int(math.sqrt(n)) + 1, 1):
		if n % j == 0:
			if j % 2 != 0:
				odd.append(j)
			elif n / j % 2 != 0:
				odd.append(int(n / j))
	return odd
n = input('')
n = int(n)
str = []
for i in range(n):
	str.append(int(input('')))
for k in str:
	my_num = num_odd(k)
	if k == 1:
		print('FastestFinger')
	elif k == 2 or k % 2 != 0:
		print('Ashishgup')
	elif len(my_num) == 1:
		num = my_num[0]
		if k / num % 4 == 0:
			print('Ashishgup')
		else:
			print('FastestFinger')
	elif len(my_num) == 0:
		print('FastestFinger')
	else:
		print('Ashishgup')


def cf(x):
	for i in range(3, x):
		if i ** 2 > x:
			return False
		if x % i == 0:
			return True
	return False

def solve():
	n = int(input())
	if n == 1:
		print('FastestFinger')
		return
	if n == 2:
		print('Ashishgup')
		return
	if n % 2 == 0:
		if n // 2 % 2 == 1:
			if cf(n // 2):
				print('Ashishgup')
			else:
				print('FastestFinger')
			return
		if n == n & -n:
			print('FastestFinger')
		else:
			print('Ashishgup')
	else:
		print('Ashishgup')
t = int(input())
for _ in range(t):
	solve()


import math

def dvisor(n):
	i = 1
	l = []
	while i <= math.sqrt(n):
		if n % i == 0:
			if n / i == i:
				l.append(i)
			else:
				l.append(i)
				l.append(n // i)
		i += 1
	return l

def solve(n):
	l1 = dvisor(n)
	c = 0
	while len(l1) > 0:
		a = min(l1)
		if a % 2 != 0 and a != 1:
			c = a
			break
		else:
			del l1[l1.index(a)]
	return c
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 != 0:
		print('Ashishgup')
	else:
		c = solve(n)
		if c == 0 and (n - 1) % 2 != 0:
			print('FastestFinger')
		else:
			n = n // c
			n = n - 1
			if n % 2 != 0 and n != 1:
				print('Ashishgup')
			if n == 1:
				print('FastestFinger')


import math
for nt in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	elif n == 2:
		print('Ashishgup')
		continue
	if n % 2:
		print('Ashishgup')
		continue
	x = 0
	m = n
	while n % 2 == 0:
		n = n // 2
		x += 1
	if n == 1:
		print('FastestFinger')
		continue
	if x == 1:
		left = m // 2
		flag = 0
		for i in range(2, int(left ** 0.5) + 1):
			if left % i == 0:
				flag = 1
				break
		if flag:
			print('Ashishgup')
		else:
			print('FastestFinger')
	else:
		print('Ashishgup')


from sys import stdin
input = stdin.readline
b = [0] * 23000
c = []
for x in range(1, 23000):
	for y in range(x, 23000, x):
		b[y] += 1
for x in range(2, 23000):
	if b[x] == 2:
		c.append(x)
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	if n == 2:
		print('Ashishgup')
		continue
	if n & n - 1 == 0:
		print('FastestFinger')
		continue
	if n % 2 == 1 or n % 4 == 0:
		print('Ashishgup')
		continue
	a = n // 2
	cnt = 0
	for x in c:
		while a % x == 0:
			a //= x
			cnt += 1
		if a == 1:
			break
	if a != 1:
		cnt += 1
	if cnt == 1:
		print('FastestFinger')
	else:
		print('Ashishgup')


import math

def read_list():
	return list(map(int, input().strip().split(' ')))

def print_list(l):
	print(' '.join(map(str, l)))
N = int(input())
for _ in range(N):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n & 1 or n == 2:
		print('Ashishgup')
	elif n >> 1 & 1 == 0:
		while n:
			if n & 1 == 1:
				break
			n >>= 1
		if n > 1:
			print('Ashishgup')
		else:
			print('FastestFinger')
	else:
		n >>= 1
		flag = False
		key = int(math.sqrt(n))
		if key * key == n:
			flag = True
		else:
			i = 3
			while i <= key:
				if n % i == 0:
					flag = True
					break
				i += 2
		if flag:
			print('Ashishgup')
		else:
			print('FastestFinger')


import sys
input = sys.stdin.readline
t = int(input())
tt = []
p = 10 ** 9
cnt = 2
while cnt <= p:
	cnt *= 2
	tt.append(cnt)

def factorization(n):
	arr = []
	temp = n
	for i in range(2, int(-(-n ** 0.5 // 1)) + 1):
		if temp % i == 0:
			cnt = 0
			while temp % i == 0:
				cnt += 1
				temp //= i
			arr.append([i, cnt])
	if temp != 1:
		arr.append([temp, 1])
	if arr == []:
		arr.append([n, 1])
	return arr
for _ in range(t):
	n = int(input())
	cnt = 0
	while True:
		cnt += 1
		if cnt % 2 == 1 and n == 1:
			print('FastestFinger')
			break
		elif cnt % 2 == 0 and n == 1:
			print('Ashishgup')
			break
		if n % 2 == 1:
			n = 1
		elif n == 2:
			n = 1
		elif n in tt:
			n -= 1
		else:
			f = factorization(n)
			if f[0][0] == 2 and f[0][1] >= 2:
				n = f[0][0] ** f[0][1]
			elif len(f) == 2 and f[1][1] == 1:
				n = f[0][0] ** f[0][1]
			else:
				n = f[0][0] ** f[0][1] * f[1][0]


import math
T = int(input())

def prime(num):
	for i in range(2, 1 + int(math.sqrt(num))):
		if num % i == 0:
			return False
	return True
for test in range(T):
	n = int(input())
	if n == 1:
		final = True
	else:
		final = False
	if n > 2 and n % 2 == 0:
		if n % 4 != 0 and n % 2 == 0 and prime(n // 2):
			final = True
		if n & n - 1 == 0:
			final = True
	if final:
		print('FastestFinger')
	else:
		print('Ashishgup')


import math
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 == 1 or n == 2:
		print('Ashishgup')
	else:
		ans = 'FastestFinger'
		for i in range(3, int(math.sqrt(n)) + 1):
			if n % i == 0:
				if i % 2 == 1 or n // i % 2 == 1:
					ans = 'Ashishgup'
		print(ans)


t = int(input())
p2 = [1]
for i in range(40):
	p2.append(2 * p2[-1])
ff = 'FastestFinger'
a = 'Ashishgup'

def prime(p):
	for i in range(3, min(4 * 10 ** 4, p), 2):
		if p % i == 0:
			return False
	return True
for i in range(t):
	n = int(input())
	if n == 1:
		print(ff)
	elif n == 2:
		print(a)
	elif n in p2:
		print(ff)
	elif n % 4 != 2:
		print(a)
	else:
		testp = n // 2
		if prime(testp):
			print(ff)
		else:
			print(a)


from math import pow
arr = []
for i in range(32):
	arr.append(pow(2, i))
for _ in range(int(input())):
	a = int(input())
	if a == 1:
		print('FastestFinger')
		continue
	if a == 2 or a % 2 == 1:
		print('Ashishgup')
		continue
	if a in arr:
		print('FastestFinger')
		continue
	cnt = 0
	i = 2
	faltu = 0
	while i * i <= a:
		while a % i == 0:
			if i == 2:
				faltu += 1
			else:
				cnt += 1
			a /= i
		i += 1
	if a > 1:
		cnt += 1
	if cnt == 1 and faltu == 1:
		print('FastestFinger')
	else:
		print('Ashishgup')


from math import sqrt

def chkprime(a):
	for i in range(3, int(sqrt(a)) + 1, 2):
		if a % i == 0:
			return 0
	return 1
for _ in range(int(input())):
	a = int(input())
	t = a
	if a == 1:
		print('FastestFinger')
	elif a == 2 or a % 2:
		print('Ashishgup')
	else:
		while a % 2 == 0:
			a //= 2
		if a == 1 or (chkprime(a) and a * 2 == t):
			print('FastestFinger')
		else:
			print('Ashishgup')


from math import sqrt

def deli(x):
	cd = 0
	while x % 2 == 0:
		cd += 1
		x //= 2
	ncd = 0
	for i in range(3, int(sqrt(x)) + 1):
		while x % i == 0:
			x //= i
			ncd += 1
	if x != 1:
		ncd += 1
	return (cd, ncd)

def solvetest():
	n = int(input())
	(c, nc) = deli(n)
	if n == 1:
		print('FastestFinger')
		return
	if n == 2:
		print('Ashishgup')
		return
	if nc >= 2:
		print('Ashishgup')
		return
	if nc == 0:
		print('FastestFinger')
		return
	if c >= 2:
		print('Ashishgup')
	elif c == 1:
		print('FastestFinger')
	else:
		print('Ashishgup')
for i in range(int(input())):
	solvetest()


import sys
sys.setrecursionlimit(10000)
from math import sqrt, floor

class Memoize:

	def __init__(self, f):
		self.f = f
		self.memo = {}

	def __call__(self, *args):
		if not args in self.memo:
			self.memo[args] = self.f(*args)
		return self.memo[args]

class Recurse(Exception):

	def __init__(self, *args, **kwargs):
		self.args = args
		self.kwargs = kwargs

def recurse(*args, **kwargs):
	raise Recurse(*args, **kwargs)

def tail_recursive(f):

	def decorated(*args, **kwargs):
		while True:
			try:
				return f(*args, **kwargs)
			except Recurse as r:
				args = r.args
				kwargs = r.kwargs
				continue
	return decorated
t = int(input())

def is_prime(x):
	for i in range(2, floor(sqrt(x)) + 1):
		if x % i == 0:
			return False
	return True
for _ in range(t):
	n = int(input())
	twos = 0
	if n == 1:
		print('FastestFinger')
		continue
	elif n == 2:
		print('Ashishgup')
		continue
	while n % 2 == 0:
		n //= 2
		twos += 1
	if twos == 1:
		if is_prime(n):
			print('FastestFinger')
		else:
			print('Ashishgup')
	elif n == 1:
		print('FastestFinger')
	else:
		print('Ashishgup')


import sys
import math

def get_ints():
	return map(int, sys.stdin.readline().strip().split())

def get_array():
	return list(map(int, sys.stdin.readline().strip().split()))

def get_string():
	return sys.stdin.readline().strip()

def primeFactors(n):
	arr = []
	while n % 2 == 0:
		arr.append(2)
		n = n // 2
	for i in range(3, int(math.sqrt(n)) + 1, 2):
		while n % i == 0:
			arr.append(i)
			n = n // i
	if n > 2:
		arr.append(n)
	return list(set(arr))

def getDivisors(n):
	i = 1
	arr = []
	while i <= math.sqrt(n):
		if n % i == 0:
			if n // i == i:
				arr.append(i)
			else:
				arr.append(i)
				arr.append(n // i)
		i = i + 1
	return arr
t = int(input())
for test in range(t):
	n = int(input())
	a = False
	b = False
	if n == 2:
		a = True
		print('Ashishgup')
	if n == 1:
		b = True
		print('FastestFinger')
	if a or b:
		continue
	arr = getDivisors(n)
	pm = primeFactors(n)
	isaval2 = False
	if 2 in pm:
		isaval2 = True
	if isaval2 == False:
		print('Ashishgup')
		continue
	count = 0
	while n % 2 == 0:
		n = n // 2
		count += 1
	count2 = 0
	for i in range(len(pm)):
		while n % pm[i] == 0:
			n = n // pm[i]
			count2 += 1
	if count == 1:
		if count2 > 1:
			a = True
		else:
			b = True
	elif count2 == 0:
		b = True
	else:
		a = True
	if a:
		print('Ashishgup')
	else:
		print('FastestFinger')


from math import sqrt
from itertools import count, islice
for _ in range(int(input())):
	n = int(input())
	li = 0

	def is_prime(n):
		if n < 2:
			return False
		for number in islice(count(2), int(sqrt(n) - 1)):
			if n % number == 0:
				return False
		return True
	if n == 1:
		print('FastestFinger')
	elif n == 2 or n % 2 == 1:
		print('Ashishgup')
	elif n & n - 1 == 0:
		print('FastestFinger')
	elif n % 4 != 0 and is_prime(n // 2):
		print('FastestFinger')
	else:
		print('Ashishgup')


import sys
input = sys.stdin.readline

def inp():
	return int(input())

def instr():
	return str(input())

def inlt():
	return list(map(int, input().split()))

def insr():
	s = input()
	return list(s[:len(s) - 1])

def invr():
	return map(int, input().split())
from collections import Counter

def Factor(n):
	Ans = []
	d = 2
	while d * d <= n:
		if n % d == 0:
			Ans.append(d)
			n //= d
		else:
			d += 1
	if n > 1:
		Ans.append(n)
	return Ans

def main():
	t = inp()
	first = 'Ashishgup'
	second = 'FastestFinger'
	for _ in range(t):
		n = inp()
		if n == 1:
			print(second)
		elif n == 2:
			print(first)
		else:
			ans = Factor(n)
			odd = 0
			even = 0
			for i in ans:
				if i % 2 == 0:
					even += 1
				else:
					odd += 1
			if even == 0:
				print(first)
			elif odd == 0:
				print(second)
			elif odd == 1 and even == 1:
				print(second)
			else:
				print(first)
main()


def has_odd_divisors(n):
	i = 2
	while i * i <= n:
		if n % i == 0 and i != n:
			divs = [i, n // i]
			for v in divs:
				if v % 2 == 1 and n // v % 2 == 0 and (v * 2 != n):
					return True
		i += 1
for _ in range(int(input())):
	n = int(input())
	cnt = 0
	if n == 1:
		print('FastestFinger')
	elif n == 2 or n % 2 == 1 or has_odd_divisors(n):
		print('Ashishgup')
	else:
		print('FastestFinger')


import math
from typing import *

def is_prime(n):
	if n % 2 == 0:
		return False
	for i in range(3, int(math.sqrt(n)) + 1, 2):
		if n % i == 0:
			return False
	return True

def compute_winner(n: int) -> str:
	if n == 1:
		return 'FastestFinger'
	if n == 2:
		return 'Ashishgup'
	if n % 2 != 0:
		return 'Ashishgup'
	n = n // 2
	if is_prime(n):
		return 'FastestFinger'
	while n % 2 == 0:
		n //= 2
	if n == 1:
		return 'FastestFinger'
	else:
		return 'Ashishgup'
n = int(input())
for _ in range(n):
	x = int(input())
	print(compute_winner(x))


import sys

class CNumberGame:

	def solve(self, tc=0):

		def solve1(n, p):
			if n in dp:
				return dp[n]
			if n == 1:
				dp[n] = 1
				return dp[n]
			if n & 1:
				dp[n] = 0
				return dp[n]
			for pd in range(2, int(n ** 0.5) + 1):
				if n % pd != 0:
					continue
				for d in [pd, n // pd]:
					if d % 2 == 1:
						him = solve1(n // d, 1 - p)
						if him == 1:
							dp[n] = 0
							return dp[n]
			dp[n] = 1 - solve1(n - 1, 1 - p)
			return dp[n]
		for _ in range(int(input())):
			players = ['Ashishgup', 'FastestFinger']
			n = int(input())
			dp = {}
			solve1(n, 0)
			print(players[dp[n]])
solver = CNumberGame()
input = sys.stdin.readline
solver.solve()


import math
import sys
from sys import stdin
input = sys.stdin.readline

def func(n):
	res = 1
	while n % 2 == 0:
		n = n // 2
	totalcount = 0
	for i in range(3, int(math.sqrt(n) + 1)):
		count = 0
		yy = 0
		curr_term = 3
		while n % i == 0:
			count += 1
			n = n // i
			curr_term *= i
			yy += i
		res *= yy
		totalcount += count
	if n >= 2:
		res *= 1 + n
		totalcount += 1
	return totalcount
for _ in range(int(input())):
	a = 'Ashishgup'
	b = 'FastestFinger'
	n = int(input())
	dic = dict()
	for i in range(1000):
		if i not in dic:
			dic[i] = 1
		else:
			dic[i] += 1
	if n == 1:
		print(b)
	elif n == 2:
		print(a)
	elif n % 2 != 0:
		print(a)
	else:
		cnt = 0
		power = n and (not n & n - 1)
		if power:
			print(b)
		elif n % 4 != 0:
			if func(n) > 1:
				print(a)
			else:
				print(b)
		else:
			print(a)


import sys
import math
input = sys.stdin.readline
t = int(input())
for i in range(t):
	a = int(input())
	if a == 1:
		print('FastestFinger')
	elif a == 2:
		print('Ashishgup')
	elif a % 2 == 1:
		print('Ashishgup')
	elif a % 2 == 0:
		ok = 0
		for j in range(3, int(a ** 0.5) + 1, 2):
			if a % j == 0:
				if a // j > 2 and a // j % 2 == 0:
					ok = 1
					break
				x = a // j
				if x % 2 == 1:
					if a // x > 2 and a // x % 2 == 0:
						ok = 1
						break
		if ok == 0:
			if a % 4 == 0:
				while a % 2 == 0:
					a = a // 2
				if a > 2:
					ok = 1
		if ok == 1:
			print('Ashishgup')
		else:
			print('FastestFinger')


import sys

def input():
	return sys.stdin.readline().strip()

def list2d(a, b, c):
	return [[c] * b for i in range(a)]

def list3d(a, b, c, d):
	return [[[d] * c for j in range(b)] for i in range(a)]

def list4d(a, b, c, d, e):
	return [[[[e] * d for j in range(c)] for j in range(b)] for i in range(a)]

def ceil(x, y=1):
	return int(-(-x // y))

def INT():
	return int(input())

def MAP():
	return map(int, input().split())

def LIST(N=None):
	return list(MAP()) if N is None else [INT() for i in range(N)]

def Yes():
	print('Yes')

def No():
	print('No')

def YES():
	print('YES')

def NO():
	print('NO')
INF = 10 ** 19
MOD = 10 ** 9 + 7

def factorize(num: int) -> dict:
	from math import sqrt
	from collections import Counter
	d = Counter()
	for i in range(2, int(sqrt(num)) + 1):
		while num % i == 0:
			num //= i
			d[i] += 1
		if num == 1:
			break
	if num != 1:
		d[num] += 1
	return d
for _ in range(INT()):
	N = INT()
	if N == 1:
		print('FastestFinger')
	elif N == 2:
		print('Ashishgup')
	else:
		fact = factorize(N)
		cnt = 0
		for (k, v) in fact.items():
			if k % 2 == 1:
				cnt += v
		if cnt == 1 and fact[2] == 1:
			print('FastestFinger')
		elif cnt >= 1:
			print('Ashishgup')
		else:
			print('FastestFinger')


try:
	import math

	def isprime(num):
		c = int(num ** 0.5)
		for i in range(2, c + 1):
			if num % i == 0:
				return False
		return True
	k = int(input())
	for i in range(k):
		z = int(input())
		if z == 1:
			print('FastestFinger')
			continue
		if z == 2:
			print('Ashishgup')
			continue
		if z % 2 == 1:
			print('Ashishgup')
			continue
		elif math.log2(z).is_integer():
			print('FastestFinger')
		else:
			temp = z // 2
			if temp % 2 == 1 and isprime(temp):
				print('FastestFinger')
			else:
				print('Ashishgup')
except Exception:
	pass


def factorize_2_and_some(n):
	count = 0
	while n % 2 == 0:
		n //= 2
		count += 1
	return (count, n)

def factorize_some_and_some(n):
	count = 0
	div = 2
	sqrt_n = n ** 0.5
	while n % div != 0 and div < sqrt_n:
		div += 1
	while n % div == 0:
		n //= div
		count += 1
	return (count, n)
t = int(input())
data = [int(input()) for i in range(t)]
for num in data:
	if num == 1:
		print('FastestFinger')
	elif num == 2:
		print('Ashishgup')
	elif num % 2 != 0:
		print('Ashishgup')
	else:
		f2as = factorize_2_and_some(num)
		if f2as[0] == 1 and factorize_some_and_some(f2as[1])[0] == 0 or f2as[1] == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')


import sys
input = sys.stdin.readline

def win():
	print('Ashishgup')

def lose():
	print('FastestFinger')

def isprime(n):
	for i in range(2, min(50000, n)):
		if n % i == 0:
			return False
	return True
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		lose()
	elif n == 2:
		win()
	elif n % 2 != 0:
		win()
	else:
		n = n // 2
		if n % 2 != 0:
			if isprime(n):
				lose()
			else:
				win()
		else:
			while n % 2 == 0:
				n = n // 2
			if n == 1:
				lose()
			else:
				win()


t = int(input())
for _ in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 != 0 or n == 2:
		print('Ashishgup')
	else:
		t = n
		(oddcount, twocount) = (0, 0)
		for i in range(2, int(t ** 0.5) + 2):
			if n % i == 0:
				while n > 1 and n % i == 0:
					n = n // i
					if i == 2:
						twocount += 1
					else:
						oddcount += 1
		if n == 2:
			twocount += 1
		if n > 2:
			oddcount += 1
		if oddcount == 0:
			print('FastestFinger')
		elif twocount == 1 and oddcount == 1:
			print('FastestFinger')
		elif twocount == 1 and oddcount >= 2:
			print('Ashishgup')
		elif oddcount >= 1:
			print('Ashishgup')


from math import sqrt

def is_prime(n):
	i = 3
	while i <= int(sqrt(n)):
		if n % i == 0:
			return False
		i += 1
	return True
win = 'Ashishgup'
lose = 'FastestFinger'
t = int(input())
for i in range(t):
	n = int(input())
	if n == 1:
		print(lose)
	elif n % 2 == 1:
		print(win)
	elif n == 2:
		print(win)
	else:
		n = n // 2
		if n % 2 == 1:
			if is_prime(n):
				print(lose)
			else:
				print(win)
		else:
			while n % 2 == 0:
				n = n // 2
			if n == 1:
				print(lose)
			else:
				print(win)


from sys import stdout, stdin
input = stdin.readline
for t in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 == 1:
		print('Ashishgup')
	else:
		c = 0
		while n % 2 == 0:
			n = n // 2
			c += 1
		d = 0
		i = 3
		while i * i <= n:
			if n % i:
				i += 1
			else:
				n //= i
				d += 1
		if n > 1:
			d += 1
		if d == 0 or (d == 1 and c == 1):
			print('FastestFinger')
		else:
			print('Ashishgup')


import math
l = []
i = 4
while i < 1000000007:
	l.append(i)
	i *= 2

def printDivisors(n):
	i = 1
	ct = 0
	b = int(math.sqrt(n))
	for i in range(2, b + 1):
		if n % i == 0:
			if n // i == i:
				if i % 2 != 0:
					ct += 1
			else:
				if i % 2 != 0:
					ct += 1
				if n // i % 2 != 0:
					ct += 1
		i = i + 1
	return ct
for _ in range(int(input())):
	n = int(input())
	ct = printDivisors(n)
	if n == 1:
		print('FastestFinger')
	elif n == 2 or n % 2 != 0:
		print('Ashishgup')
	elif n % 2 == 0:
		if n in l:
			print('FastestFinger')
		elif ct == 1 and n % 4 != 0:
			print('FastestFinger')
		elif ct == 1 and n % 4 == 0:
			print('Ashishgup')
		elif ct > 1:
			print('Ashishgup')


def isPrime(x):
	if x == 1:
		return False
	for i in range(2, int(x ** 0.5) + 1):
		if x % i == 0:
			return False
	return True

def primeFactorization2(x):
	ps = []
	es = []
	i = 2
	k = x
	while i <= k ** 0.5:
		if k % i == 0 and isPrime(i):
			ps.append(i)
			e = 0
			while k % i == 0:
				k = k // i
				e += 1
			es.append(e)
		i += 1
	if x == 1:
		return [[], []]
	elif isPrime(x):
		return [[x], [1]]
	else:
		return [ps + primeFactorization2(k)[0], es + primeFactorization2(k)[1]]

def solve(n):
	if n == 1:
		return False
	else:
		l = primeFactorization2(n)
		things = 0
		for i in range(len(l[0])):
			if l[0][i] % 2 == 1:
				things += l[1][i]
		if things == 0:
			return n > 2
		else:
			something = l[1][0]
			if something == 1:
				return things < 2
			else:
				return False

def dummy(x):
	l = primeFactorization2(x)
	things = 0
	for i in range(len(l[0])):
		if l[0][i] % 2 == 1:
			things += l[1][i]
	return things
t = int(input())
count = 0
while count < t:
	count += 1
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 == 1:
		print('Ashishgup')
	elif solve(n):
		print('FastestFinger')
	else:
		print('Ashishgup')


import sys
sys.setrecursionlimit(2000)

def divisors(n):
	for i in range(1, n // 2 + 1):
		if n % i == 0:
			yield i
	yield n

def nextns(n):
	result = []
	if n > 1:
		result.append(n - 1)
	for d in divisors(n):
		if d % 2 == 1 and d != 1:
			result.append(n // d)
	return result
import functools

@functools.lru_cache(maxsize=20000)
def dp(n):
	if n == 1:
		return False
	return any((not dp(np) for np in nextns(n)))

def brute(N):
	if dp(N):
		return 'Ashishgup'
	else:
		return 'FastestFinger'

def powerOf2(n):
	return n & n - 1 == 0 and n != 0
from math import sqrt
from itertools import count, islice

def isPrime(n):
	return n > 1 and all((n % i for i in islice(count(2), int(sqrt(n) - 1))))

def soln(n):
	if powerOf2(n) and n != 2:
		return 'FastestFinger'
	if n % 2 == 0 and isPrime(n // 2):
		return 'FastestFinger'
	return 'Ashishgup'

def main():
	t = int(input())
	for _ in range(t):
		n = int(input())
		result = soln(n)
		print(result)

def test():
	b = brute(3)
	print(b)

def randomTest():
	for n in range(1, 100001):
		print(n)
		b = brute(n)
		f = soln(n)
		if b != f:
			print('Broken!')
			print(b, f)
			return
main()


import sys

def input():
	return sys.stdin.readline().rstrip()

def input_split():
	return [int(i) for i in input().split()]
testCases = int(input())
answers = []
player1 = 'Ashishgup'
player2 = 'FastestFinger'

def power_of_2_greater_than_2(a):
	start = 4
	for _ in range(50):
		if a == start:
			return True
		start = start * 2
	return False

def remove_twos(a):
	while a % 2 == 0:
		a = a // 2
	return a

def is_prime(a):
	for i in range(2, min(a, int(a ** 0.5) + 3)):
		if a % i == 0:
			return False
	return True
for _ in range(testCases):
	n = int(input())
	if n == 1:
		ans = player2
	elif n == 2:
		ans = player1
	elif n % 2 == 1:
		ans = player1
	elif power_of_2_greater_than_2(n):
		ans = player2
	elif n % 4 != 0:
		left_over = remove_twos(n)
		if is_prime(left_over):
			ans = player2
		else:
			ans = player1
	else:
		ans = player1
	answers.append(ans)
print(*answers, sep='\n')


from math import sqrt, ceil
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 == 1 or n == 2:
		print('Ashishgup')
	else:
		n /= 2
		for f in range(2, ceil(sqrt(n)) + 1):
			o = n / f
			if n % f == 0 and f % 2 == 1 or (n % o == 0 and o % 2 == 1 and (o != 1)):
				print('Ashishgup')
				break
		else:
			print('FastestFinger')


from math import sqrt

def prime(n):
	d = {}
	if n % 2 == 0:
		d[2] = 0
		while n % 2 == 0:
			d[2] += 1
			n = n // 2
	for i in range(3, int(sqrt(n)) + 1, 2):
		if n % i == 0:
			d[i] = 0
			while n % i == 0:
				d[i] += 1
				n = n // i
	if n > 2:
		d[n] = 1
	return d
t = int(input())
for jack in range(t):
	n = int(input())
	if n == 1:
		f = 'f'
	elif n == 2:
		f = 'a'
	elif n % 2 != 0:
		f = 'a'
	else:
		x = n
		r = prime(x)
		p2 = r[2]
		podd = sum(r.values()) - p2
		if p2 >= 2:
			if podd > 0:
				f = 'a'
			else:
				f = 'f'
		elif podd == 1:
			f = 'f'
		else:
			f = 'a'
	if f == 'a':
		print('Ashishgup')
	else:
		print('FastestFinger')


from collections import deque, defaultdict
from random import randint
from math import log2, sqrt

def is_prirme(n):
	sqrtn = int(sqrt(n))
	for i in range(2, sqrtn + 1):
		if n % i == 0:
			return False
	return True
t = int(input())
(win, lose) = ('Ashishgup', 'FastestFinger')
for _ in range(t):
	n = int(input())
	if n == 1:
		print(lose)
	elif n == 2 or n & 1:
		print(win)
	elif bin(n).count('1') == 1:
		print(lose)
	elif is_prirme(n // 2):
		print(lose)
	else:
		print(win)


t = int(input())
for _ in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	if n == 2:
		print('Ashishgup')
		continue
	if n % 2 == 1:
		print('Ashishgup')
		continue
	draw = 0
	while True:
		if n % 2 == 0:
			draw = draw + 1
			n = n // 2
		else:
			break
	oddf = 0
	if n > 1:
		oddf = oddf + 1
		i = 3
		while i * i <= n:
			if n % i == 0:
				oddf = oddf + 1
				break
			else:
				i = i + 2
				continue
	if draw == 1:
		if oddf == 1 or oddf == 0:
			print('FastestFinger')
		else:
			print('Ashishgup')
	else:
		if oddf == 0:
			print('FastestFinger')
		else:
			print('Ashishgup')
		continue


fast = 'FastestFinger'
ash = 'Ashishgup'
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 == 1:
		print('Ashishgup')
	elif n == 2:
		print(ash)
	else:
		two = 1
		while n % 2 == 0:
			n //= 2
			two *= 2
		if n == 1:
			print('FastestFinger')
		elif two >= 4:
			print(ash)
		else:
			i = 3
			prime = True
			while i * i <= n:
				if n % i == 0:
					prime = False
					break
				i += 2
			if prime == True:
				print(fast)
			else:
				print(ash)


import math

def Log2(x):
	return math.log10(x) / math.log10(2)

def isPowerOfTwo(n):
	return math.ceil(Log2(n)) == math.floor(Log2(n))

def isPrime(n):
	for i in range(2, math.floor(math.sqrt(n)) + 1):
		if n % i == 0:
			return False
	return True
for _ in range(int(input())):
	[n] = list(map(int, input().split()))
	s1 = 'Ashishgup'
	s2 = 'FastestFinger'
	ans = s1
	if n == 1:
		ans = s2
	elif n == 2:
		ans = s1
	elif n % 2 != 0:
		ans = s1
	elif isPowerOfTwo(n):
		ans = s2
	elif n % 4 == 0:
		ans = s1
	else:
		n = n // 2
		if isPrime(n):
			ans = s2
		else:
			ans = s1
	print(ans)


from sys import stdin, stdout
import sys
INF = 100000000000.0
import bisect

def get_int():
	return int(stdin.readline().strip())

def get_ints():
	return map(int, stdin.readline().strip().split())

def get_array():
	return list(map(int, stdin.readline().strip().split()))

def get_string():
	return stdin.readline().strip()

def op(c):
	return stdout.write(c)
from collections import defaultdict
import math
for _ in range(int(stdin.readline())):
	n = get_int()
	if n <= 1:
		print('FastestFinger')
		continue
	if n == 2:
		print('Ashishgup')
		continue
	p = True
	for i in range(2, int(math.sqrt(n)) + 1):
		if n % i == 0:
			p = False
	if p:
		print('Ashishgup')
		continue
	t = 0
	while n % 2 == 0:
		t += 1
		n = n // 2
	if n == 1:
		print('FastestFinger')
		continue
	odd = 0
	for i in range(2, int(math.sqrt(n) + 1)):
		if n % i == 0:
			if i & 1:
				odd += 1
			if n // i & 1:
				odd += 1
	if t == 1:
		if odd > 1:
			print('Ashishgup')
			continue
		else:
			print('FastestFinger')
			continue
	print('Ashishgup')


import math, string, itertools, operator, fractions, heapq, collections, re, array, bisect, sys, functools

def solve(line):
	n = int(line)
	if n == 1:
		return 'FastestFinger'
	if n == 2:
		return 'Ashishgup'
	if n % 2 == 1:
		return 'Ashishgup'
	cn = []
	for i in range(2, int(math.sqrt(n)) + 1):
		if n % i == 0 and (i % 2 == 1 or n // i % 2 == 1):
			if i % 2 == 1:
				cn.append(i)
			else:
				cn.append(n // i)
			if len(cn) > 1:
				break
	if len(cn) == 0:
		return 'FastestFinger'
	if len(cn) == 1:
		return 'FastestFinger' if n // 2 % 2 == 1 else 'Ashishgup'
	return 'Ashishgup'
T = int(sys.stdin.readline())
t = 0
while True:
	line = sys.stdin.readline().rstrip()
	if not line:
		break
	print(solve(line))
	t += 1


t = int(input())
for _ in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	if n == 2:
		print('Ashishgup')
		continue
	if n % 2 == 1:
		print('Ashishgup')
		continue
	if n % 4 == 0:
		while n % 2 == 0:
			n //= 2
		if n == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')
		continue
	else:
		n //= 2
		isPrime = True
		for i in range(3, int(n ** 0.5) + 2):
			if n % i == 0:
				isPrime = False
				break
		if not isPrime:
			print('Ashishgup')
		else:
			print('FastestFinger')


import math

def prime(n):
	tc = 0
	while n % 2 == 0:
		n = n // 2
		tc += 1
	pp = []
	for i in range(3, int(math.sqrt(n)) + 1, 2):
		while n % i == 0:
			pp.append(i)
			n = n // i
	if n > 2:
		pp.append(n)
	return (len(pp), tc)
test = int(input())
for _ in range(test):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2 or n % 2:
		print('Ashishgup')
	else:
		(odf, tc) = prime(n)
		if odf == 0:
			print('FastestFinger')
		elif tc == 1:
			if odf == 1:
				print('FastestFinger')
			else:
				print('Ashishgup')
		else:
			print('Ashishgup')


from sys import stdin, stdout
import sys
from math import *

def fec(n):
	f = []
	for i in range(2, int(sqrt(n)) + 1):
		if n % i == 0:
			if n % (n // i) == 0 and n // i % 2 == 1 and (n // (n // i) % 2 == 0):
				f.append(n // i)
			if i % 2 == 1 and n // i % 2 == 0:
				f.append(i)
	f.sort()
	return f
for __ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 == 1 or n == 2:
		print('Ashishgup')
	else:
		t = 0
		f = fec(n)
		if len(f) == 0:
			print('FastestFinger')
		elif len(f) == 1 and n // f[0] % 2 == 1 or n // f[0] == 2:
			print('FastestFinger')
		else:
			print('Ashishgup')


rr = lambda : input().strip()
rrm = lambda : map(int, rr().split())

def isPrime(n):
	if n <= 1:
		return False
	if n <= 3:
		return True
	if n % 2 == 0 or n % 3 == 0:
		return False
	i = 5
	while i * i <= n:
		if n % i == 0 or n % (i + 2) == 0:
			return False
		i = i + 6
	return True

def solve(n):
	if n == 1:
		return 'FastestFinger'
	if n % 2 == 1 or n == 2:
		return 'Ashishgup'
	k = n
	while k % 2 == 0:
		k = k / 2
	n = n / k
	if k == 1:
		return 'FastestFinger'
	elif n == 2:
		if isPrime(k):
			return 'FastestFinger'
		else:
			return 'Ashishgup'
	else:
		return 'Ashishgup'
T = int(rr())
for _ in range(T):
	n = int(rr())
	ma = solve(n)
	print(ma)


for t in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 == 1 or n == 2:
		print('Ashishgup')
	else:
		ans = 'FastestFinger'
		i = 3
		while i * i <= n:
			if n % i == 0 and (i % 2 == 1 or n // i % 2 == 1):
				ans = 'Ashishgup'
				break
			i += 1
		print(ans)


for _ in range(int(input())):
	n = int(input())
	xx = n
	ev = 0
	od = 0
	while n % 2 == 0:
		ev += 1
		n //= 2
	for i in range(3, int(n ** (1 / 2)) + 1, 2):
		while n % i == 0:
			od += 1
			n //= i
	if n > 2:
		od += 1
	if ev == 0:
		if od == 0:
			print('FastestFinger')
		else:
			print('Ashishgup')
	elif ev == 1:
		if od != 1:
			print('Ashishgup')
		else:
			print('FastestFinger')
	elif od == 0:
		print('FastestFinger')
	else:
		print('Ashishgup')


t = int(input())
for T in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n == 6:
		print('FastestFinger')
	else:
		if n % 2 != 0:
			print('Ashishgup')
		if n % 2 == 0:
			s = bin(n).replace('0b', '')
			c = s.count('1')
			if c == 1:
				print('FastestFinger')
			else:
				p = n / 2
				x = int(p ** 0.5) + 3
				if p % 2 == 0:
					print('Ashishgup')
				else:
					j = 0
					for i in range(3, x):
						if p % i == 0:
							print('Ashishgup')
							break
						else:
							j = i
					if j == x - 1:
						print('FastestFinger')


def sol(n):
	if n == 1:
		return 'FastestFinger'
	if n % 2 == 1 or n == 2:
		return 'Ashishgup'
	for i in range(3, int(n ** 0.5) + 1):
		if n % i == 0:
			if i % 2 == 1 or n // i % 2 == 1:
				return 'Ashishgup'
	return 'FastestFinger'
for _ in range(int(input())):
	print(sol(int(input())))


import io
import os
from collections import Counter
from functools import lru_cache
players = ['Ashishgup', 'FastestFinger']

def factors(n):
	fhead = []
	ftail = []
	for x in range(1, int(n ** 0.5) + 1):
		if n % x == 0:
			fhead.append(x)
			if x * x != n:
				ftail.append(n // x)
	return fhead + ftail[::-1]

@lru_cache(maxsize=None)
def solve(N):
	if N == 1:
		return 1
	if N == 2:
		who = solve(N - 1) ^ 1
		assert who == 0
		return 0
	if N % 2 == 1:
		who = solve(N // N) ^ 1
		assert who == 0
		return 0
	assert N % 2 == 0
	who = solve(N - 1) ^ 1
	assert who == 1
	pow2 = 1
	odd = N
	while odd % 2 == 0:
		odd //= 2
		pow2 *= 2
	assert odd * pow2 == N
	if odd == 1:
		who = solve(N - 1) ^ 1
		assert who == 1
		return 1
	else:
		divisors = factors(odd)
		if len(divisors) == 2:
			who = solve(N // odd) ^ 1
			assert pow2 == N // odd
			if pow2 == 2:
				assert who == 1
				return 1
			else:
				assert who == 0
				return 0
		else:
			if pow2 == 2:
				who = solve(N // divisors[-2]) ^ 1
				assert who == 0
			else:
				who = solve(N // odd) ^ 1
				assert who == 0
			return 0
input = io.BytesIO(os.read(0, os.fstat(0).st_size)).readline
T = int(input())
for t in range(T):
	(N,) = [int(x) for x in input().split()]
	ans = solve(N)
	print(players[ans])


from math import sqrt

def isprime2(n):
	if n == 2 or n == 3:
		return True
	if n % 2 == 0 or n < 2:
		return False
	for i in range(3, int(n ** 0.5) + 1, 2):
		if n % i == 0:
			return False
	return True

def isprime(n):
	if n == 1:
		return False
	if n == 2:
		return True
	for i in range(2, int(sqrt(n)) + 1):
		if n % i == 0:
			return False
	return True

def ispow2(n):
	if n % 2:
		if n == 1:
			return True
		else:
			return False
	else:
		return ispow2(int(n / 2))

def solve(n):
	if n == 1:
		return 'FastestFinger'
	if n == 2:
		return 'Ashishgup'
	if n % 2:
		return 'Ashishgup'
	else:
		w = 0
		while n % 2 == 0:
			n = n / 2
			w = w + 1
		if w == 1:
			if isprime2(n):
				return 'FastestFinger'
			else:
				return 'Ashishgup'
		elif n == 1:
			return 'FastestFinger'
		else:
			return 'Ashishgup'
t = int(input())
for ingles in range(t):
	n = int(input())
	print(solve(n))


from bisect import bisect_left as lower_bound, bisect_right as upper_bound
from sys import stdin, stdout
from collections import defaultdict

def solve(n):
	i = 2
	cnt = 0
	while i * i <= n:
		if n % i == 0:
			cnt += 2
		i += 1
	if cnt == 0:
		cnt += 1
	return cnt

def main():
	t = int(input())
	for _ in range(t):
		n = int(input())
		if n == 1:
			print('FastestFinger')
			continue
		if n & 1 or n == 2:
			print('Ashishgup')
			continue
		if n & n - 1 == 0:
			print('FastestFinger')
			continue
		cnt = 0
		while n % 2 == 0:
			n //= 2
			cnt += 1
		if cnt > 1:
			print('Ashishgup')
		else:
			ret = solve(n)
			if ret & 1:
				print('FastestFinger')
			else:
				print('Ashishgup')
main()


import sys
input = lambda : sys.stdin.readline().strip()

def find_div(n):
	div = []
	for i in range(2, int(n ** 0.5) + 1):
		if n % i == 0:
			if i % 2:
				div.append(i)
			if n // i != i:
				if n // i % 2:
					div.append(n // i)
	return div

def f(turn, n):
	if n % 2:
		return turn
	if n == 2:
		return turn
	cnt = 0
	tmp = n
	while tmp % 2 == 0:
		tmp = tmp // 2
		cnt += 1
	if cnt > 1:
		return turn
	div = find_div(n)
	for i in div:
		val = f(not turn, n // i)
		if val == True:
			return True
	return not turn
t = int(input())
while t:
	t -= 1
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	if n == 2:
		print('Ashishgup')
		continue
	if n & n - 1 == 0:
		print('FastestFinger')
		continue
	if n % 2:
		print('Ashishgup')
		continue
	if f(True, n):
		print('Ashishgup')
	else:
		print('FastestFinger')


def prime(n):
	for i in range(2, min(n, 50000)):
		if n % i == 0:
			return 0
	return 1
t = int(input())
for i in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 != 0:
		print('Ashishgup')
	elif n & n - 1 == 0:
		print('FastestFinger')
	elif n % 4 != 0 and prime(n // 2):
		print('FastestFinger')
	else:
		print('Ashishgup')


for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	if n == 2:
		print('Ashishgup')
		continue
	if n % 2 == 1:
		print('Ashishgup')
		continue
	k = 0
	t = n
	while t % 2 == 0:
		k += 1
		t //= 2
	f = False
	for i in range(3, int(t ** 0.5 + 1)):
		if t % i == 0 and i != t:
			f = True
			break
	if k > 1 and t != 1 or (f and k >= 1):
		print('Ashishgup')
	else:
		print('FastestFinger')


import math
for i in range(int(input())):
	n = int(input())
	if n % 2 != 0 and n != 1:
		print('Ashishgup')
	elif n == 1:
		print('FastestFinger')
	else:
		(k, p) = (0, 0)
		while n % 2 == 0:
			k = k + 1
			n = n / 2
		if n > 1:
			for j in range(3, int(math.sqrt(n)) + 1, 2):
				if n % j == 0:
					p = p + 1
					if p >= 1:
						print('Ashishgup')
						break
			if p == 0:
				if k > 1:
					print('Ashishgup')
				else:
					print('FastestFinger')
		elif k != 1:
			print('FastestFinger')
		else:
			print('Ashishgup')


import random

def modulo(base, exponent, mod):
	x = 1
	y = base
	while exponent > 0:
		if exponent % 2 == 1:
			x = x * y % mod
		y = y * y % mod
		exponent = exponent // 2
	return x % mod

def calculateJacobian(a, n):
	if a == 0:
		return 0
	ans = 1
	if a < 0:
		a = -a
		if n % 4 == 3:
			ans = -ans
	if a == 1:
		return ans
	while a:
		if a < 0:
			a = -a
			if n % 4 == 3:
				ans = -ans
		while a % 2 == 0:
			a = a // 2
			if n % 8 == 3 or n % 8 == 5:
				ans = -ans
		(a, n) = (n, a)
		if a % 4 == 3 and n % 4 == 3:
			ans = -ans
		a = a % n
		if a > n // 2:
			a = a - n
	if n == 1:
		return ans
	return 0

def solovoyStrassen(p, iterations):
	if p < 2:
		return False
	if p != 2 and p % 2 == 0:
		return False
	for i in range(iterations):
		a = random.randrange(p - 1) + 1
		jacobian = (p + calculateJacobian(a, p)) % p
		mod = modulo(a, (p - 1) / 2, p)
		if jacobian == 0 or mod != jacobian:
			return False
	return True
n = int(input())
for i in range(n):
	a = int(input())
	if a == 1:
		print('FastestFinger')
	elif a == 2:
		print('Ashishgup')
	elif a % 2 == 0:
		if a % 4 != 0 and solovoyStrassen(a // 2, 10):
			print('FastestFinger')
		elif a & a - 1 == 0:
			print('FastestFinger')
		else:
			print('Ashishgup')
	else:
		print('Ashishgup')


import math
for _ in range(int(input())):
	n = int(input())
	f = 1
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 == 1:
		print('Ashishgup')
	elif math.log2(n) % 1 == 0:
		print('FastestFinger')
	else:
		for i in range(2, int(n ** 0.5) + 1):
			if n % i == 0:
				if i % 2 == 1:
					if math.log2(n // i) % 1 == 0 and n // i != 2:
						f = 0
						print('Ashishgup')
						break
				if n // i % 2 == 1:
					if math.log2(i) % 1 == 0 and i != 2:
						f = 0
						print('Ashishgup')
						break
		if f == 1:
			k = n // 2
			prime = 1
			for i in range(2, int(k ** 0.5) + 1):
				if k % i == 0:
					prime = 0
					break
			if prime == 1:
				print('FastestFinger')
			else:
				print('Ashishgup')


import math
cases = int(input())
for i in range(cases):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2:
		print('Ashishgup')
	else:
		puiss = 0
		while n % 2 == 0:
			n //= 2
			puiss += 1
		if puiss > 1:
			if n == 1:
				print('FastestFinger')
			else:
				print('Ashishgup')
		else:
			prime = True
			for i in range(2, math.ceil(math.sqrt(n)) + 1):
				if n % i == 0:
					prime = False
					break
			if prime:
				print('FastestFinger')
			else:
				print('Ashishgup')


for _ in range(int(input())):
	n = int(input())
	if n % 2 != 0 and n != 1:
		print('Ashishgup')
	elif n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	else:
		even = 0
		while n % 2 == 0:
			even += 1
			n = n // 2
		if n == 1:
			print('FastestFinger')
			continue
		odd = 0
		n1 = int(n ** 0.5)
		for i in range(n1, 1, -1):
			if n % i == 0:
				odd += 2
				break
		if even == 1 and odd == 0:
			print('FastestFinger')
		else:
			print('Ashishgup')


import sys, math
input = lambda : sys.stdin.readline().strip()
li = lambda : list(map(int, input().split()))
I = lambda : int(input())
for _ in range(I()):
	f = 'FastestFinger'
	a = 'Ashishgup'
	n = I()
	c = 0
	if n & 1:
		if n == 1:
			print(f)
		else:
			print(a)
	elif n == 2:
		print(a)
	else:
		c = 0
		tc = 0
		while n & 1 == 0:
			n >>= 1
			tc += 1
		for i in range(3, int(math.sqrt(n)) + 1, 2):
			while n % i == 0:
				n //= i
				c += 1
		if n > 2:
			c += 1
		if tc == 1:
			if c > 1:
				print(a)
			else:
				print(f)
		elif c > 0:
			print(a)
		else:
			print(f)


def mi():
	return map(int, input().split())

def isPrime(n):
	if n <= 1:
		return False
	if n <= 3:
		return True
	if n % 2 == 0 or n % 3 == 0:
		return False
	i = 5
	while i * i <= n:
		if n % i == 0 or n % (i + 2) == 0:
			return False
		i = i + 6
	return True
for _ in range(int(input())):
	n = int(input())
	nc = n
	if n % 2 and n > 1:
		winner = 1
	elif n == 1:
		winner = 2
	elif n == 2:
		winner = 1
	else:
		while n % 2 == 0:
			n //= 2
		if n % 2 and n > 1:
			if nc // n > 2:
				winner = 1
			elif isPrime(n):
				winner = 2
			else:
				winner = 1
		else:
			winner = 2
	if winner == 1:
		print('Ashishgup')
	else:
		print('FastestFinger')


t = int(input())
powers = [2 ** i for i in range(32)]
FIRST = 'Ashishgup'
SECOND = 'FastestFinger'

def isprime(k):
	if k < 2:
		return False
	for i in range(2, min(k, int(k ** 0.5) + 1)):
		if k % i == 0:
			return False
	return True
for case in range(t):
	n = int(input())
	if n == 1:
		print(SECOND)
	elif n == 2:
		print(FIRST)
	elif n in powers:
		print(SECOND)
	elif n % 4 == 0:
		print(FIRST)
	elif n % 2 == 0:
		if isprime(n // 2):
			print(SECOND)
		else:
			print(FIRST)
	else:
		print(FIRST)


import sys
from functools import lru_cache, cmp_to_key
from heapq import merge, heapify, heappop, heappush
from math import sqrt, ceil, factorial, inf
from collections import defaultdict as dd, deque, Counter as C
from itertools import combinations as comb, permutations as perm
from bisect import bisect_left as bl, bisect_right as br, bisect
from time import perf_counter
from decimal import Decimal
from fractions import Fraction
mod = pow(10, 9) + 7
mod2 = 998244353

def data():
	return sys.stdin.readline().strip()

def out(*var, end='\n'):
	sys.stdout.write(' '.join(map(str, var)) + end)

def l():
	return list(sp())

def sl():
	return list(ssp())

def sp():
	return map(int, data().split())

def ssp():
	return map(str, data().split())

def l1d(n, val=0):
	return [val for i in range(n)]

def l2d(n, m, val=0):
	return [l1d(n, val) for j in range(m)]
for _ in range(int(data())):
	n = int(data())
	if n == 1:
		out('FastestFinger')
		continue
	if n == 2 or n & 1:
		out('Ashishgup')
		continue
	i = 3
	answer = 'FastestFinger'
	while i * i <= n:
		if n % i == 0:
			if i & 1 and n // i > 2:
				answer = 'Ashishgup'
				break
			temp = n // i
			if temp & 1 and i > 2:
				answer = 'Ashishgup'
				break
		i += 1
	out(answer)


def isprime(n):
	for i in range(2, int(n ** 0.5) + 1):
		if n % i == 0:
			return False
	return True

def solve(n):
	if n == 1:
		return 'FastestFinger'
	if n == 2 or n % 2 != 0:
		return 'Ashishgup'
	elif n & n - 1 == 0:
		return 'FastestFinger'
	else:
		p = 0
		while n % 2 == 0:
			p += 1
			n = n // 2
		if p == 1 and isprime(n):
			return 'FastestFinger'
		else:
			return 'Ashishgup'
try:
	for _ in range(int(input())):
		n = int(input())
		print(solve(n))
except EOFError:
	pass


t = int(input())
import math
for i in range(t):
	n = int(input())
	arr_prime = []
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 == 1:
		print('Ashishgup')
	else:
		c = 0
		while n % 2 == 0:
			c += 1
			n = n // 2
		for i in range(3, int(math.sqrt(n)) + 1, 2):
			while n % i == 0:
				n = n / i
				arr_prime.append(i)
		if n > 2:
			arr_prime.append(i)
		if len(arr_prime) == 0:
			print('FastestFinger')
		elif len(arr_prime) == 1 and c == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')


for _ in range(int(input())):
	n = nn = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	if n == 2:
		print('Ashishgup')
		continue
	i = 2
	while i < n:
		i *= 2
	if i == n:
		print('FastestFinger')
		continue
	n = nn
	k = 0
	i = 2
	if not n & 1:
		n //= 2
		while i * i <= n:
			if n % i == 0:
				k = 1
				break
			i += 1
		if k == 0:
			print('FastestFinger')
		else:
			print('Ashishgup')
	else:
		print('Ashishgup')


import math

def is_prime(n):
	if n == 1:
		return False
	if n == 2:
		return True
	if n == 3:
		return True
	for i in range(2, min(int(math.sqrt(n)) + 2, n)):
		if n % i == 0:
			return False
	return True

def solve():
	n = int(input())
	if n == 1:
		return False
	if n == 2:
		return True
	if n % 2 != 0:
		return True
	pow2 = 0
	while n % 2 == 0:
		pow2 += 1
		n //= 2
	if n == 1:
		return False
	if pow2 == 1 and is_prime(n):
		return False
	return True

def main():
	t = int(input())
	for _ in range(t):
		if solve():
			print('Ashishgup')
		else:
			print('FastestFinger')
main()


import sys
import math
from collections import defaultdict as dd
mod = 1000000007
T = 1
T = int(sys.stdin.readline())
for _ in range(T):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2 or n & 1:
		print('Ashishgup')
	else:
		k = n
		c = 0
		while k % 2 == 0:
			k >>= 1
		p = n // k
		sq = int(math.sqrt(k)) + 1
		for i in range(3, sq, 2):
			if k % i == 0:
				c += 2
		if c > 1:
			print('Ashishgup')
		elif p <= 2 or p == n:
			print('FastestFinger')
		else:
			print('Ashishgup')


import sys
from math import sqrt
fast_reader = sys.stdin.readline
fast_writer = sys.stdout.write

def input():
	return fast_reader().strip()

def print(*argv):
	fast_writer(' '.join((str(i) for i in argv)))
	fast_writer('\n')
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 == 1 or n == 2:
		print('Ashishgup')
	else:
		f = True
		for i in range(2, int(sqrt(n) + 2)):
			if n % i == 0:
				if i % 2 == 1 and n // i != 2 or (n // i % 2 == 1 and i != 2):
					f = False
					break
		if f:
			print('FastestFinger')
		else:
			print('Ashishgup')


def mindel(a):
	for i in range(3, int(a ** 0.5 + 1)):
		if i % 2 and (not a % i):
			return i
	return a
for _ in range(int(input())):
	n = int(input())
	c = 0
	while n != 1:
		if n % 2:
			n = 1
		else:
			k = n
			while not k % 2:
				k //= 2
			if k == 1:
				n -= 1
			elif n // k == 2 and k // mindel(k) != 1:
				n //= k // mindel(k)
			else:
				n //= k
		c += 1
	print(['FastestFinger', 'Ashishgup'][c % 2])


def lose_1():
	print('FastestFinger')

def lose_2():
	print('Ashishgup')

def is_prime(a):
	i = 2
	while i * i <= a:
		if a % i == 0:
			return False
		i += 1
	return True

def main():
	t = int(input())
	for __ in range(t):
		n = int(input())
		if n == 1:
			lose_1()
		elif n % 2:
			lose_2()
		else:
			ans = 1
			m = n
			while n % 2 == 0:
				n = n // 2
				ans *= 2
			if n == 1:
				if m == 2:
					lose_2()
				else:
					lose_1()
			elif ans >= 4:
				lose_2()
			elif is_prime(m // ans):
				lose_1()
			else:
				lose_2()
main()


t = int(input())
out = ''
for _ in range(t):
	N = int(input())
	n = N
	if n == 1:
		out += 'FastestFinger\n'
		continue
	if n == 2 or n == 3:
		out += 'Ashishgup\n'
		continue
	twos = 0
	while n % 2 == 0:
		n //= 2
		twos += 1
	if n == 1:
		out += 'FastestFinger\n'
		continue
	for x in range(3, int(n ** 0.5) + 2, 2):
		if n % x == 0:
			out += 'Ashishgup\n'
			break
	else:
		if twos == 1:
			out += 'FastestFinger\n'
		else:
			out += 'Ashishgup\n'
print(out)


for _ in range(int(input())):
	x = int(input())
	if x == 1:
		print('FastestFinger')
	elif x == 2:
		print('Ashishgup')
	elif x % 2 == 1:
		print('Ashishgup')
	else:
		n = 0
		while x != 1:
			n += 1
			if x % 2 == 0:
				n2 = 1
				while x % 2 == 0:
					n2 *= 2
					x //= 2
				if x == 1:
					x = n2 - 1
				elif n2 != 2:
					x = int(n2)
				else:
					z = -1
					for i in range(3, int(x ** 0.5) + 1):
						if x % i == 0:
							z = i
							break
					if z > -1:
						x = 2 * z
					else:
						x = 2
			else:
				x = 1
		if n % 2 == 1:
			print('Ashishgup')
		else:
			print('FastestFinger')


import math

def power(n):
	z = 0
	while n % 2 == 0:
		n = n // 2
		z += 1
	return z
for _ in range(int(input())):
	(a,) = map(int, input().split())
	if a == 1 or a == 4:
		print('FastestFinger')
	elif a == 2:
		print('Ashishgup')
	elif a % 2 == 1:
		print('Ashishgup')
	else:
		z = power(a)
		k = a // 2 ** z
		if z > 1 and k != 1:
			print('Ashishgup')
		else:
			for i in range(3, math.ceil(math.sqrt(a)) + 1, 2):
				if a % i == 0 and a // i > 2:
					print('Ashishgup')
					break
			else:
				print('FastestFinger')


from sys import stdin
input = stdin.buffer.readline

def prime(x):
	for i in range(2, int(x ** 0.5) + 1):
		if not x % i:
			return False
	return True
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n & 1:
		print('Ashishgup')
	else:
		cnt = 0
		while not n & 1:
			n >>= 1
			cnt += 1
		print('FastestFinger' if n == 1 or (cnt == 1 and prime(n)) else 'Ashishgup')


from math import sqrt

def get_Divisors(n):
	arr = []
	i = 1
	while i <= sqrt(n):
		if n % i == 0:
			if n / i == i:
				arr.append(i)
			else:
				arr.append(i)
				arr.append(n // i)
		i = i + 1
	arr.sort()
	res = []
	for item in arr:
		if item > 1 and item % 2:
			res.append(item)
	return res

def isprime(n):
	i = 2
	while i * i <= n:
		if n % i == 0:
			return 0
		i += 1
	return 1
for ttt in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	if n == 2:
		print('Ashishgup')
		continue
	if n % 2:
		print('Ashishgup')
	else:
		x = n
		res = get_Divisors(n)
		if len(res):
			x //= res[0]
			if x > 2:
				print('Ashishgup')
			else:
				print('FastestFinger')
		else:
			print('FastestFinger')


import sys
import math
t = int(sys.stdin.readline())
for _ in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 == 1:
		print('Ashishgup')
	else:
		flag = True
		c = n
		while n > 1:
			if n % 2 == 1:
				flag = False
				break
			n = n // 2
		if flag:
			print('FastestFinger')
		else:
			n = c
			i = 2
			div = []
			while i <= math.sqrt(n):
				if n % i == 0:
					if n / i == i:
						if i % 2 == 1:
							div.append(i)
					else:
						if i % 2 == 1:
							div.append(i)
						if n // i % 2 == 1:
							div.append(n // i)
				i = i + 1
			flag = True
			for i in range(len(div)):
				k = n // div[i]
				while k > 1:
					if k % 2 == 1:
						flag = False
						break
					k = k // 2
			if flag == True and len(div) == 1 and (n // div[0] == 2):
				print('FastestFinger')
			else:
				print('Ashishgup')


import sys
from collections import defaultdict

def rl():
	return sys.stdin.readline().strip()

def pf(n):
	d = defaultdict(int)
	counter = 0
	while n % 2 == 0:
		n //= 2
		counter += 1
	d[2] = counter
	i = 3
	if n == 1:
		d['others'] = 0
	elif n % 2 == 1:
		d['others'] = 1
	while i ** 2 <= n:
		if n % i == 0:
			d['others'] = 2
			break
		i += 2
	return d
T = int(rl())
for test in range(T):
	n = int(rl())
	d = pf(n)
	if d[2] == 1:
		if d['others'] == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')
	elif d['others'] == 0:
		print('FastestFinger')
	else:
		print('Ashishgup')


import math
t = int(input())
for _ in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n & 1 == 1:
		print('Ashishgup')
	else:
		ct = 0
		for i in range(2, int(n ** 0.5) + 1):
			if n % i == 0:
				if i & 1 == 1:
					ct += 1
				if n // i & 1 == 1:
					ct += 1
		if ct == 0:
			print('FastestFinger')
		elif n % 4 == 0:
			print('Ashishgup')
		else:
			n = n // 2
			flag = True
			for i in range(2, int(n ** 0.5) + 1):
				if n % i == 0:
					flag = False
					break
			if flag:
				print('FastestFinger')
			else:
				print('Ashishgup')


from sys import stdin
from functools import reduce

def factors(n):
	return list(set(reduce(list.__add__, ([i, n // i] for i in range(2, int(n ** 0.5) + 1) if n % i == 0))))

def isprime(n):
	for i in range(2, int(n ** 0.5) + 1):
		if n % i == 0:
			return False
	return True
for _ in range(int(stdin.readline())):
	n = int(stdin.readline())
	if n == 1:
		print('FastestFinger')
	elif n % 2 != 0:
		print('Ashishgup')
	elif n == 2:
		print('Ashishgup')
	else:
		arr = factors(n)
		arr = list(filter(lambda x: x % 2 != 0, arr))
		if len(arr) == 0:
			print('FastestFinger')
		elif isprime(n // 2):
			print('FastestFinger')
		else:
			print('Ashishgup')


from sys import stdin, exit
from math import sqrt
input = stdin.readline

def i():
	return input()

def ii():
	return int(input())

def iis():
	return map(int, input().split())

def liis():
	return list(map(int, input().split()))

def print_array(a):
	print(' '.join(map(str, a)))
ff = 'FastestFinger'
ashi = 'Ashishgup'

def prime_factors(n):
	prime = []
	while n % 2 == 0:
		prime.append(2)
		n = n // 2
	for i in range(3, int(sqrt(n)) + 1, 2):
		while n % i == 0:
			prime.append(i)
			n = n // i
	if n > 2:
		prime.append(n)
	return prime
t = ii()
for _ in range(t):
	n = ii()
	first = False
	second = False
	if n == 1:
		first = True
	elif n % 2 == 1:
		second = True
	elif n == 2:
		second = True
	else:
		primes = prime_factors(n)
		count = 0
		twos = 0
		for i in primes:
			if i % 2 == 1:
				count += 1
			else:
				twos += 1
		if twos == 1 and count == 1:
			first = True
		elif count >= 1:
			second = True
		else:
			first = True
	if first:
		print(ff)
	else:
		print(ashi)


import sys

def rs():
	return sys.stdin.readline().rstrip()

def ri():
	return int(sys.stdin.readline())

def ria():
	return list(map(int, sys.stdin.readline().split()))

def ws(s):
	sys.stdout.write(s + '\n')

def wi(n):
	sys.stdout.write(str(n) + '\n')

def wia(a):
	sys.stdout.write(' '.join([str(x) for x in a]) + '\n')

def primes_up_to(n):
	pp = [2]
	for i in range(3, n + 1):
		pi = 0
		is_prime = True
		while pi < len(pp) and pp[pi] * pp[pi] <= i:
			if i % pp[pi] == 0:
				is_prime = False
				break
			pi += 1
		if is_prime:
			pp.append(i)
	return pp

def is_prime(n):
	if n < 5 or n & 1 == 0 or n % 3 == 0:
		return 2 <= n <= 3
	s = (n - 1 & 1 - n).bit_length() - 1
	d = n >> s
	for a in [2, 325, 9375, 28178, 450775, 9780504, 1795265022]:
		p = pow(a, d, n)
		if p == 1 or p == n - 1 or a % n == 0:
			continue
		for _ in range(s):
			p = p * p % n
			if p == n - 1:
				break
		else:
			return False
	return True

def solve(n):
	if n == 1:
		return False
	if n == 2:
		return True
	if n % 2 == 1:
		return True
	k = 0
	m = n
	while m % 2 == 0:
		k += 1
		m //= 2
	if m == 1:
		return False
	if k > 1:
		return True
	return not is_prime(m)

def main():
	for _ in range(ri()):
		n = ri()
		ws('Ashishgup' if solve(n) else 'FastestFinger')
main()


import math

def solve(n):
	div = []
	if n == 1:
		print('FastestFinger')
	elif n % 2 != 0:
		print('Ashishgup')
	elif n == 2:
		print('Ashishgup')
	else:
		results = set()
		for i in range(2, int(math.sqrt(n)) + 1):
			if n % i == 0:
				if i % 2 != 0:
					results.add(i)
				if int(n / i) % 2 != 0:
					results.add(int(n / i))
		results = list(results)
		if len(results) == 0:
			print('FastestFinger')
			return
		elif len(results) == 1:
			if results[0] * 2 == n:
				print('FastestFinger')
			else:
				print('Ashishgup')
		else:
			print('Ashishgup')
	return
t = int(input())
for _ in range(t):
	n = int(input())
	solve(n)


from math import pow as p
powers = []
for i in range(32):
	powers.append(p(2, i))
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	if n == 2 or n % 2:
		print('Ashishgup')
		continue
	if n in powers:
		print('FastestFinger')
		continue
	a = 0
	b = 2
	c = 0
	while b * b <= n:
		while n % b == 0:
			if b == 2:
				c += 1
			else:
				a += 1
			n /= b
		b += 1
	if n > 1:
		a += 1
	if a == 1 and c == 1:
		print('FastestFinger')
	else:
		print('Ashishgup')


import math
t = int(input())
player = ['Ashishgup', 'FastestFinger']
for _ in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	if n % 2 != 0 or n == 2:
		print('Ashishgup')
		continue
	w = 1
	(even_divisor, odd_divisor) = (False, False)
	for i in range(2, math.ceil(math.sqrt(n))):
		if n % i == 0:
			if i % 2 != 0:
				if n // i % 2 == 0 and n // i > 2:
					w = 0
					break
			if n // i % 2 != 0:
				if i % 2 == 0 and i > 2:
					w = 0
					break
	print(player[w])


pri = {}

def Sieve():
	n = 100000
	prime = [True for i in range(n + 1)]
	p = 2
	while p * p <= n:
		if prime[p] == True:
			for i in range(p * 2, n + 1, p):
				prime[i] = False
		p += 1
	prime[0] = False
	prime[1] = False
	for p in range(n + 1):
		if prime[p]:
			pri[p] = 1
Sieve()

def chk_prime(n):
	if n == 2:
		return False
	for i in range(2, int(n ** (1 / 2)) + 1):
		if n % i == 0:
			return False
	return True

def cal(n):
	a = 0
	li = []
	for i in sorted(pri.keys()):
		while n % i == 0:
			n //= i
			a += 1
			li.append(i)
		if n == 1:
			break
	if n != 1:
		a += 1
	return a
for _ in range(int(input())):
	p1 = 'Ashishgup'
	p2 = 'FastestFinger'
	n = int(input())
	if n == 1:
		print(p2)
		continue
	if n % 2 == 1:
		print(p1)
		continue
	chance = 1
	temp = n
	while n % 2 == 0:
		n //= 2
	x = cal(n)
	if x == 0:
		ans = p1 if temp // n == 2 else p2
	elif x == 1:
		ans = p1 if temp // n != 2 else p2
	else:
		ans = p1
	print(ans)


from collections import Counter
import string
import math
import sys

def array_int():
	return [int(i) for i in sys.stdin.readline().split()]

def vary(number_of_variables):
	if number_of_variables == 1:
		return int(sys.stdin.readline())
	if number_of_variables >= 2:
		return map(int, sys.stdin.readline().split())

def makedict(var):
	return dict(Counter(var))
mod = 100000007

def isPrime(n):
	if n <= 1:
		return False
	if n <= 3:
		return True
	if n % 2 == 0 or n % 3 == 0:
		return False
	i = 5
	while i * i <= n:
		if n % i == 0 or n % (i + 2) == 0:
			return False
		i = i + 6
	return True
powers = [int(2 ** i) for i in range(1, 32)]
st = set(powers)
for _ in range(vary(1)):
	n = vary(1)
	if n == 1:
		print('FastestFinger')
		continue
	if n == 2:
		print('Ashishgup')
		continue
	if n in st:
		print('FastestFinger')
		continue
	if n % 2 != 0:
		print('Ashishgup')
	elif n % 4 == 0:
		print('Ashishgup')
	elif isPrime(n // 2):
		print('FastestFinger')
	else:
		print('Ashishgup')


def prime_factors(n):
	i = 2
	factors = []
	while i * i <= n:
		if n % i:
			i += 1
		else:
			n //= i
			factors.append(i)
	if n > 1:
		factors.append(n)
	ans = []
	for x in factors:
		if x % 2:
			ans.append(x)
	return ans
for _ in range(int(input())):
	n = int(input())
	if n % 2 == 1 and n != 1:
		res = 'Ashishgup'
	elif n == 2:
		res = 'Ashishgup'
	elif n == 1:
		res = 'FastestFinger'
	else:
		x = prime_factors(n)
		if len(x) == 0 or (len(x) == 1 and n // x[0] == 2):
			res = 'FastestFinger'
		else:
			res = 'Ashishgup'
	print(res)


import math
from collections import Counter, defaultdict, deque
from sys import stdin, stdout
input = stdin.readline
I = lambda : int(input())
M = lambda : map(int, input().split())
LI = lambda : list(map(int, input().split()))

def prime(n):
	for i in range(2, int(math.sqrt(n)) + 1):
		if n % i == 0:
			return 0
	return 1
for _ in range(I()):
	n = I()
	c = n
	while c % 2 == 0:
		c //= 2
	if n % 2 and n != 1 or n == 2:
		print('Ashishgup')
	elif n == 1 or c == 1:
		print('FastestFinger')
	elif n % 4 == 0:
		print('Ashishgup')
	elif prime(n // 2):
		print('FastestFinger')
	else:
		print('Ashishgup')


import sys
input = sys.stdin.readline

def prime_factorize(n, unique=False):
	b = 2
	fct = []
	while b * b <= n:
		while n % b == 0:
			n //= b
			fct.append(b)
		b = b + 1
	if n > 1:
		fct.append(n)
	if unique:
		return set(fct)
	else:
		return fct
t = int(input())
for _ in range(t):
	n = int(input())
	p = prime_factorize(n)
	if not p:
		print('FastestFinger')
		continue
	if len(p) == 1:
		print('Ashishgup')
		continue
	two = p.count(2)
	other = len(p) - two
	if two > 0 and other == 0:
		print('FastestFinger')
		continue
	if two == 1 and other == 1:
		print('FastestFinger')
		continue
	print('Ashishgup')


import math

def gen_primes():
	D = {}
	q = 2
	while True:
		if q not in D:
			yield q
			D[q * q] = [q]
		else:
			for p in D[q]:
				D.setdefault(p + q, []).append(p)
			del D[q]
		q += 1
primes = gen_primes()
p = set()
i = 0
while i < 10 ** 5 // 4:
	i = next(primes)
	p |= set([i])
prim = sorted(list(p))
t = int(input())
for k in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2:
		print('Ashishgup')
	elif n % 4 == 0:
		exp = math.log(n, 2)
		if exp == int(exp):
			print('FastestFinger')
		else:
			print('Ashishgup')
	else:
		c = n // 2
		if c in p:
			print('FastestFinger')
		else:
			for k in prim:
				if c % k == 0:
					print('Ashishgup')
					break
			else:
				print('FastestFinger')


from math import ceil
for _ in range(int(input())):
	n = int(input())
	winner = 'FastestFinger'
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 == 1:
		print('Ashishgup')
	else:
		for i in range(2, ceil(n ** 0.5)):
			if n % i == 0:
				first = i
				second = n / i
				if first % 2 == 1 and second > 2 and (second % 2 == 0):
					winner = 'Ashishgup'
					break
				elif second % 2 == 1 and first > 2 and (first % 2 == 0):
					winner = 'Ashishgup'
					break
		print(winner)


import sys

def check_prime(n):
	N = 50000
	for i in range(2, min(n, N)):
		if n % i == 0:
			return 0
	return 1

def findWinner(n):
	lose = n == 1
	if n > 2 and n % 2 == 0:
		if n & n - 1 == 0:
			lose = 1
		elif n % 4 != 0 and check_prime(n // 2):
			lose = 1
	if lose:
		print('FastestFinger')
	else:
		print('Ashishgup')
t = int(sys.stdin.readline())
for i in range(t):
	n = int(sys.stdin.readline())
	findWinner(n)


import math

def prime(n):
	flag = 0
	for i in range(2, int(math.sqrt(n)) + 1):
		if n % i == 0:
			flag = 1
			break
	if flag == 0:
		return True
	else:
		return False
for i1 in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 != 0:
		print('Ashishgup')
	else:
		if n == 2:
			print('Ashishgup')
			continue
		temp = n // 2
		if prime(temp):
			print('FastestFinger')
			continue
		else:
			count = 0
			while n % 2 == 0:
				count += 1
				n = n // 2
			if n == 1:
				print('FastestFinger')
			else:
				print('Ashishgup')


import sys
import math
from collections import defaultdict, deque
input = sys.stdin.readline

def inar():
	return [int(el) for el in input().split()]

def toogle(char):
	if char == 'b':
		return 'w'
	else:
		return 'b'

def take(lis):
	l = -10 ** 9 + 7
	ans = -10 ** 9 + 7
	for i in range(len(lis)):
		l = max(lis[i], lis[i] + l)
		ans = max(ans, l)
	return ans

def main():
	for _ in range(int(input())):
		n = int(input())
		odd = []
		for i in range(2, int(n ** 0.5) + 1):
			if n % i == 0:
				if i % 2 != 0:
					odd.append(i)
				if n // i % 2 != 0:
					odd.append(n // i)
		if n == 1:
			print('FastestFinger')
		elif n == 2:
			print('Ashishgup')
		elif n % 2 != 0 or len(odd) >= 2:
			print('Ashishgup')
		elif len(odd) == 1:
			if n // odd[0] == 2:
				print('FastestFinger')
			else:
				print('Ashishgup')
		else:
			print('FastestFinger')
main()


import math

def prime(n):
	tc = 0
	while n % 2 == 0:
		n = n // 2
		tc += 1
	pp = []
	for i in range(3, int(math.sqrt(n)) + 1, 2):
		while n % i == 0:
			pp.append(i)
			n = n // i
	if n > 2:
		pp.append(n)
	return (tc, len(pp))
t = int(input())
for _ in range(t):
	n = int(input())
	(ff, ash) = ('FastestFinger', 'Ashishgup')
	if n == 1:
		print(ff)
	elif n == 2:
		print(ash)
	elif n % 2 != 0:
		print(ash)
	else:
		(even, odd) = prime(n)
		if odd == 0:
			print(ff)
		elif even == 1:
			print(ash if odd > 1 else ff)
		else:
			print(ash)


for j in range(int(input())):
	n = int(input())
	b = 'Ashishgup'
	if n % 2 == 0 and n != 2 or n == 1:
		b = 'FastestFinger'
		for i in range(3, int(n ** 0.5) + 1, 1):
			if not n % i and (i % 2 != 0 or n // i % 2 != 0):
				b = 'Ashishgup'
	print(b)


from math import *
for _ in range(int(input())):
	n = int(input())
	ok = False
	if n == 1 or n == 6:
		ok = False
	elif n % 2 != 0:
		ok = True
	elif log2(n).is_integer() == True and log2(n) > 1:
		ok = False
	elif n % 2 == 0 and n // 2 > 3:
		x = n // 2
		sq = floor(sqrt(x))
		for i in range(2, sq + 1):
			if x % i == 0:
				ok = True
				break
	else:
		ok = True
	if ok:
		print('Ashishgup')
	else:
		print('FastestFinger')


def isPrime(n):
	if n <= 1:
		return False
	if n <= 3:
		return True
	if n % 2 == 0 or n % 3 == 0:
		return False
	i = 5
	while i * i <= n:
		if n % i == 0 or n % (i + 2) == 0:
			return False
		i = i + 6
	return True
import math
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	if n % 2 != 0:
		print('Ashishgup')
		continue
	if math.log(n, 2).is_integer() and math.log(n, 2) > 1:
		print('FastestFinger')
		continue
	if isPrime(n // 2) and n >= 6:
		print('FastestFinger')
		continue
	print('Ashishgup')


w = 'Ashishgup'
l = 'FastestFinger'
ans = []
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		ans.append(l)
		continue
	if n == 2 or n % 2 == 1:
		ans.append(w)
		continue
	cnt = 0
	while n % 2 == 0:
		n //= 2
		cnt += 1
	if n == 1:
		ans.append(l)
		continue
	elif cnt > 1:
		ans.append(w)
		continue
	i = 2
	while i * i <= n:
		if n % i == 0:
			ans.append(w)
			break
		i += 1
	else:
		ans.append(l)
print('\n'.join(ans))


def numbergame(N):
	if N == 1:
		return 'FastestFinger'
	if N % 2 == 1 or N == 2:
		return 'Ashishgup'
	for i in range(3, int(N ** 0.5) + 1):
		if N % i == 0:
			if i % 2 == 1 or N // i % 2 == 1:
				return 'Ashishgup'
	return 'FastestFinger'
Testcases = int(input())
for _ in range(Testcases):
	print(numbergame(int(input())))


t = int(input())
for i in range(t):
	number = int(input())
	if number == 1:
		print('FastestFinger')
	elif number % 2:
		print('Ashishgup')
	elif number % 2 == 0:
		counter = 0
		elsecounter = 0
		while number % 2 == 0:
			number /= 2
			elsecounter += 1
		for i in range(3, int(number ** 0.5) + 2, 2):
			if number % i == 0:
				counter += 1
				number /= i
				break
		if number != 1:
			counter += 1
		if counter == 0:
			if elsecounter > 1:
				print('FastestFinger')
			else:
				print('Ashishgup')
		elif elsecounter > 1:
			print('Ashishgup')
		elif counter > 1:
			print('Ashishgup')
		else:
			print('FastestFinger')


INF = 1 << 60

def is_prime(n):
	if n <= 1:
		return False
	p = 2
	while True:
		if p ** 2 > n:
			break
		if n % p == 0:
			return False
		p += 1
	return True

def cnt(n):
	x = 0
	while n % 2 == 0:
		x += 1
		n //= 2
	return x

def print_a():
	print('Ashishgup')

def print_f():
	print('FastestFinger')
t = int(input())
for i in range(t):
	n = int(input())
	x = cnt(n)
	if x >= 2:
		n //= 2 ** x
		if n == 1:
			print_f()
		else:
			print_a()
	elif x == 1:
		if n // 2 == 1:
			print_a()
		elif is_prime(n // 2):
			print_f()
		else:
			print_a()
	elif n == 1:
		print_f()
	else:
		print_a()


import sys
t = sys.stdin.readline().rstrip()
t = int(t)
for i in range(t):
	n = sys.stdin.readline().rstrip()
	n = int(n)
	norg = n
	k = 0
	while n % 2 == 0:
		n = n // 2
		k += 1
	a = []
	x = 3
	while n > 1 and x <= norg ** 0.5:
		if n % x == 0:
			a.append(x)
			n = n // x
		else:
			x += 2
	if n > 1:
		a.append(n)
	p = len(a)
	if k == 0 and p == 0:
		print('FastestFinger')
	elif k == 0:
		print('Ashishgup')
	elif k == 1:
		if p == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')
	elif p == 0:
		print('FastestFinger')
	else:
		print('Ashishgup')


import time, math, bisect, sys
from sys import stdin, stdout
from collections import deque
from fractions import Fraction
from collections import Counter
from collections import OrderedDict
pi = 3.141592653589793

def II():
	return int(stdin.readline())

def IO():
	return stdin.readline()

def IP():
	return map(int, stdin.readline().split())

def L():
	return list(map(int, stdin.readline().split()))

def P(x):
	return stdout.write(str(x))

def PI(x, y):
	return stdout.write(str(x) + ' ' + str(y) + '\n')

def lcm(a, b):
	return a * b // gcd(a, b)

def gcd(a, b):
	if a == 0:
		return b
	elif b == 0:
		return a
	if a > b:
		return gcd(a % b, b)
	else:
		return gcd(a, b % a)

def readTree():
	v = int(input())
	adj = [set() for i in range(v + 1)]
	for i in range(v - 1):
		(u1, u2) = In()
		adj[u1].add(u2)
		adj[u2].add(u1)
	return (adj, v)

def bfs(adj, v):
	visited = [False] * (v + 1)
	q = deque()
	while q:
		pass

def sieve():
	li = [True] * 1000001
	(li[0], li[1]) = (False, False)
	for i in range(2, len(li), 1):
		if li[i] == True:
			for j in range(i * i, len(li), i):
				li[j] = False
	prime = []
	for i in range(1000001):
		if li[i] == True:
			prime.append(i)
	return prime

def setBit(n):
	count = 0
	while n != 0:
		n = n & n - 1
		count += 1
	return count

def solve():
	n = II()
	if n == 1:
		print('FastestFinger')
		return
	if n % 2 != 0:
		print('Ashishgup')
		return
	else:
		mx = -99999999999
		for i in range(2, int(math.sqrt(n)) + 1, 1):
			if n % i == 0:
				if i % 2 != 0:
					mx = max(mx, i)
				x = n // i
				if x % 2 != 0:
					mx = max(mx, x)
		if mx == -99999999999:
			if n == 2:
				print('Ashishgup')
				return
			elif n != 2 and n % 2 == 0:
				print('FastestFinger')
				return
		elif n % 4 == 0:
			print('Ashishgup')
		else:
			x = n // 2
			for i in range(2, int(math.sqrt(x)) + 1):
				if x % i == 0:
					print('Ashishgup')
					break
			else:
				print('FastestFinger')
t = II()
for i in range(t):
	solve()


def is_prime(n):
	if n < 5 or n & 1 == 0 or n % 3 == 0:
		return 2 <= n <= 3
	s = (n - 1 & 1 - n).bit_length() - 1
	d = n >> s
	for a in [2, 325, 9375, 28178, 450775, 9780504, 1795265022]:
		p = pow(a, d, n)
		if p == 1 or p == n - 1 or a % n == 0:
			continue
		for _ in range(s):
			p = p * p % n
			if p == n - 1:
				break
		else:
			return False
	return True

def who_wins(n):
	if n == 1:
		return False
	elif n % 2 != 0:
		return True
	elif n == 2:
		return True
	x = 0
	while True:
		if n % 2 != 0:
			break
		x += 1
		n //= 2
	if n == 1:
		return False
	elif x == 1:
		return not is_prime(n)
	else:
		return True

def main():
	t = int(input())
	for _ in range(t):
		n = int(input())
		if who_wins(n):
			print('Ashishgup')
		else:
			print('FastestFinger')
main()


import math

def isprime(n):
	if n <= 1:
		return False
	if n <= 3:
		return True
	if n % 2 == 0 or n % 3 == 0:
		return False
	i = 5
	while i * i <= n:
		if n % i == 0 or n % (i + 2) == 0:
			return False
		i = i + 6
	return True
for _ in range(int(input())):
	n = int(input())
	if n == 2:
		print('Ashishgup')
	elif n % 2 == 1 and n != 1:
		print('Ashishgup')
	elif n == 1 or 2 ** int(math.log(n, 2)) == n:
		print('FastestFinger')
	elif n // 2 % 2 == 1:
		if isprime(n // 2):
			print('FastestFinger')
		else:
			print('Ashishgup')
	elif n % 4 == 0:
		print('Ashishgup')
	else:
		print('Ashishgup')


(T,) = map(int, input().split())
for _ in range(T):
	(N,) = map(int, input().split())
	if N == 1:
		print('FastestFinger')
	elif N % 2:
		print('Ashishgup')
	elif N == 2:
		print('Ashishgup')
	else:
		k = N
		c = 0
		while k % 2 == 0:
			k = k // 2
			c += 1
		if c > 1:
			if k == 1:
				print('FastestFinger')
			else:
				print('Ashishgup')
		else:
			f = 0
			for i in range(3, int(k ** 0.5) + 1, 2):
				if k % i == 0:
					f = 1
					print('Ashishgup')
					break
			if not f:
				print('FastestFinger')


from __future__ import division, print_function
import os, sys
from io import BytesIO, IOBase
if sys.version_info[0] < 3:
	from __builtin__ import xrange as range
	from future_builtins import ascii, filter, hex, map, oct, zip

def ii():
	return int(input())

def si():
	return input()

def mi():
	return map(int, input().strip().split(' '))

def msi():
	return map(str, input().strip().split(' '))

def li():
	return list(mi())

def dmain():
	sys.setrecursionlimit(1000000)
	threading.stack_size(1024000)
	thread = threading.Thread(target=main)
	thread.start()
import sys
input = sys.stdin.readline
scanner = lambda : int(input())
string = lambda : input().rstrip()
get_list = lambda : list(read())
read = lambda : map(int, input().split())
get_float = lambda : map(float, input().split())

def ceil(x):
	if x != int(x):
		x = int(x) + 1
	return x

def factorial(x, m):
	val = 1
	while x > 0:
		val = val * x % m
		x -= 1
	return val

def fact(x):
	val = 1
	while x > 0:
		val *= x
		x -= 1
	return val

def swaparr(arr, a, b):
	temp = arr[a]
	arr[a] = arr[b]
	arr[b] = temp

def gcd(a, b):
	if b == 0:
		return a
	return gcd(b, a % b)

def lcm(a, b):
	return a * b // math.gcd(a, b)

def is_integer(n):
	return math.ceil(n) == math.floor(n)

def nCr(n, k):
	if k > n:
		return 0
	if k > n - k:
		k = n - k
	res = 1
	for i in range(k):
		res = res * (n - i)
		res = res / (i + 1)
	return int(res)

def primefs(n):
	primes = {}
	while n % 2 == 0 and n > 0:
		primes[2] = primes.get(2, 0) + 1
		n = n // 2
	for i in range(3, int(n ** 0.5) + 2, 2):
		while n % i == 0 and n > 0:
			primes[i] = primes.get(i, 0) + 1
			n = n // i
	if n > 2:
		primes[n] = primes.get(n, 0) + 1
	return primes

def power(x, y, p):
	if y == 0:
		return 1
	res = 1
	x = x % p
	if x == 0:
		return 0
	while y > 0:
		if y & 1 == 1:
			res = res * x % p
		y = y >> 1
		x = x * x % p
	return res

def swap(a, b):
	temp = a
	a = b
	b = temp
	return (a, b)

def find(x, link):
	p = x
	while p != link[p]:
		p = link[p]
	while x != p:
		nex = link[x]
		link[x] = p
		x = nex
	return p

def union(x, y, link, size):
	x = find(x, link)
	y = find(y, link)
	if size[x] < size[y]:
		(x, y) = swap(x, y)
	if x != y:
		size[x] += size[y]
		link[y] = x

def sieve(n):
	prime = [True for i in range(n + 1)]
	(prime[0], prime[1]) = (False, False)
	p = 2
	while p * p <= n:
		if prime[p] == True:
			for i in range(p * p, n + 1, p):
				prime[i] = False
		p += 1
	return prime

def phi(n):
	result = n
	p = 2
	while p * p <= n:
		if n % p == 0:
			while n % p == 0:
				n = n // p
			result = result * (1.0 - 1.0 / float(p))
		p = p + 1
	if n > 1:
		result = result * (1.0 - 1.0 / float(n))
	return int(result)

def is_prime(n):
	if n == 0:
		return False
	if n == 1:
		return True
	for i in range(2, int(n ** (1 / 2)) + 1):
		if not n % i:
			return False
	return True

def next_prime(n, primes):
	while primes[n] != True:
		n += 1
	return n
MAXN = int(100000.0 + 5)

def spf_sieve():
	spf[1] = 1
	for i in range(2, MAXN):
		spf[i] = i
	for i in range(4, MAXN, 2):
		spf[i] = 2
	for i in range(3, ceil(MAXN ** 0.5), 2):
		if spf[i] == i:
			for j in range(i * i, MAXN, i):
				if spf[j] == j:
					spf[j] = i
spf = [0 for i in range(MAXN)]

def factoriazation(x):
	res = []
	for i in range(2, int(x ** 0.5) + 1):
		while x % i == 0:
			res.append(i)
			x //= i
	if x != 1:
		res.append(x)
	return res

def factors(n):
	res = []
	for i in range(1, int(n ** 0.5) + 1):
		if n % i == 0:
			res.append(i)
			res.append(n // i)
	return list(set(res))

def int_array():
	return list(map(int, input().strip().split()))

def float_array():
	return list(map(float, input().strip().split()))

def str_array():
	return input().strip().split()

def binary_search(low, high, w, h, n):
	while low < high:
		mid = low + (high - low) // 2
		if check(mid, w, h, n):
			low = mid + 1
		else:
			high = mid
	return low

def check(moves, n):
	val = (moves + 1) // 2
	rem = moves - val
	sol = (val + 1) * (rem + 1)
	return sol < n

def sortSecond(val):
	return val[1]
MOD = int(1000000000.0) + 7
CMOD = 998244353
INF = float('inf')
NINF = -float('inf')
alphs = 'abcdefghijklmnopqrstuvwxyz'
from itertools import permutations
import math
import bisect as bis
import random
import sys
import collections as collect
import functools as fnt
from decimal import Decimal

def is_divisible(x):
	if math.ceil(x) == math.floor(x):
		return True
	return False

def solve():
	n = scanner()
	ans = ['Ashishgup', 'FastestFinger']
	if n == 1:
		print(ans[1])
		return
	if n == 2:
		print(ans[0])
		return
	if n % 2 == 1:
		print(ans[0])
		return
	else:
		i = 3
		while i * i < n:
			if n % i == 0 and (i % 2 == 1 and n // i % 2 == 0 or (i % 2 == 0 and n // i % 2 == 1)):
				print(ans[0])
				return
			i += 1
		print(ans[1])
BUFSIZE = 8192

class FastIO(IOBase):
	newlines = 0

	def __init__(self, file):
		self._fd = file.fileno()
		self.buffer = BytesIO()
		self.writable = 'x' in file.mode or 'r' not in file.mode
		self.write = self.buffer.write if self.writable else None

	def read(self):
		while True:
			b = os.read(self._fd, max(os.fstat(self._fd).st_size, BUFSIZE))
			if not b:
				break
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines = 0
		return self.buffer.read()

	def readline(self):
		while self.newlines == 0:
			b = os.read(self._fd, max(os.fstat(self._fd).st_size, BUFSIZE))
			self.newlines = b.count(b'\n') + (not b)
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines -= 1
		return self.buffer.readline()

	def flush(self):
		if self.writable:
			os.write(self._fd, self.buffer.getvalue())
			(self.buffer.truncate(0), self.buffer.seek(0))

class IOWrapper(IOBase):

	def __init__(self, file):
		self.buffer = FastIO(file)
		self.flush = self.buffer.flush
		self.writable = self.buffer.writable
		self.write = lambda s: self.buffer.write(s.encode('ascii'))
		self.read = lambda : self.buffer.read().decode('ascii')
		self.readline = lambda : self.buffer.readline().decode('ascii')

def print(*args, **kwargs):
	(sep, file) = (kwargs.pop('sep', ' '), kwargs.pop('file', sys.stdout))
	at_start = True
	for x in args:
		if not at_start:
			file.write(sep)
		file.write(str(x))
		at_start = False
	file.write(kwargs.pop('end', '\n'))
	if kwargs.pop('flush', False):
		file.flush()
if sys.version_info[0] < 3:
	(sys.stdin, sys.stdout) = (FastIO(sys.stdin), FastIO(sys.stdout))
else:
	(sys.stdin, sys.stdout) = (IOWrapper(sys.stdin), IOWrapper(sys.stdout))
input = lambda : sys.stdin.readline().rstrip('\r\n')
t = scanner()
for i in range(t):
	solve()


def ans(n):
	k = 0
	while n % 2 == 0:
		n //= 2
		k += 1
	return k

def isp(n):
	if n <= 1:
		return False
	if n <= 3:
		return True
	if n % 2 == 0 or n % 3 == 0:
		return False
	i = 5
	while i * i <= n:
		if n % i == 0 or n % (i + 2) == 0:
			return False
		i = i + 6
	return True
t = int(input())
while t:
	t -= 1
	n = int(input())
	if n & 1 and n > 1:
		print('Ashishgup')
	elif n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n & n - 1 == 0 and n > 2:
		print('FastestFinger')
	else:
		ff = ans(n)
		if ff > 1:
			print('Ashishgup')
		else:
			k = n // 2
			if isp(k):
				print('FastestFinger')
			else:
				print('Ashishgup')


def first_wins(n):
	if n == 1:
		return False
	if n == 2:
		return True
	_2_degree = 0
	while n % 2 == 0:
		_2_degree += 1
		n //= 2
	if _2_degree == 0:
		return True
	if n == 1:
		return False
	if _2_degree > 1:
		return True
	for i in range(3, n, 2):
		if i * i > n:
			return False
		if n % i == 0:
			return True

def main():
	for case in range(int(input())):
		print('Ashishgup' if first_wins(int(input().strip())) else 'FastestFinger')
main()


for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	if n == 2:
		print('Ashishgup')
		continue
	factor_2 = 1
	shit = n
	while shit > 1:
		if shit % 2 == 0:
			shit /= 2
		else:
			factor_2 = 0
			break
	if factor_2 == 1:
		print('FastestFinger')
		continue
	if n % 2 == 1:
		print('Ashishgup')
	else:
		k = n // 2
		prime = 1
		for i in range(2, int(k ** 0.5) + 1):
			if k % i == 0:
				prime = 0
				break
		if prime == 0:
			print('Ashishgup')
		else:
			print('FastestFinger')


import math
player = ['Ashishgup', 'FastestFinger']

def isPrime(m):
	if m < 2:
		return False
	i = 2
	while i * i <= m:
		if m % i == 0:
			return False
		i += 1
	return True
T = int(input())
for _ in range(T):
	n = int(input())
	if n == 1:
		print(player[1])
		continue
	if n % 2 == 1:
		print(player[0])
		continue
	if n == 2:
		print(player[0])
		continue
	if math.floor(math.log2(n)) == math.ceil(math.log2(n)):
		print(player[1])
		continue
	if n % 4 == 0:
		print(player[0])
		continue
	m = n // 2
	if isPrime(m):
		print(player[1])
	else:
		print(player[0])


import math
T = int(input())
for _ in range(T):
	ag = 'Ashishgup'
	ff = 'FastestFinger'
	n = int(input())
	if n == 1:
		print(ff)
	elif n == 2:
		print(ag)
	elif n % 2 == 1:
		print(ag)
	elif int(math.ceil(math.log2(n))) == int(math.floor(math.log2(n))):
		print(ff)
	elif n % 4 == 0:
		print(ag)
	else:
		n = n // 2
		flag = 0
		for i in range(3, n, 2):
			if i * i > n:
				break
			if n % i == 0:
				flag = 1
				break
		if flag == 0:
			print(ff)
		else:
			print(ag)


def prime(x):
	if x % 2 == 0:
		return False
	for k in range(3, x + 10, 2):
		if x % k == 0 and x != k:
			return False
			break
		if k ** 2 > x:
			return True
			break
for i in range(int(input())):
	n = int(input())
	m = n
	go = True
	ano = False
	be = True
	if n == 1:
		print('FastestFinger')
	elif n % 2 != 0 or n == 2:
		print('Ashishgup')
	elif n & n - 1 == 0:
		print('FastestFinger')
	elif n / 2 == 3 or prime(n // 2):
		print('FastestFinger')
	else:
		print('Ashishgup')


from math import sqrt, log2, ceil

def isPrime(n):
	l = sqrt(n)
	for i in range(2, int(l) + 1):
		if n % i == 0:
			return False
	return True
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2:
		print('Ashishgup')
	elif int(log2(n)) == ceil(log2(n)):
		print('FastestFinger')
	elif isPrime(n // 2):
		print('FastestFinger')
	else:
		print('Ashishgup')


from sys import stdin, stdout
import math
input = stdin.readline

def print(x='', end='\n'):
	stdout.write(str(x) + end)

def prime(n):
	if n == 1:
		return False
	for i in range(2, int(n ** 0.5) + 1):
		if n % i == 0:
			return False
	return True

def solve():
	n = int(input())
	if n == 1:
		print('FastestFinger')
		return
	if n == 2 or n % 2:
		print('Ashishgup')
		return
	if not n & n - 1:
		print('FastestFinger')
		return
	if prime(n // 2):
		print('FastestFinger')
	else:
		print('Ashishgup')
test = 1
test = int(input())
for __ in range(test):
	solve()


t = int(input())
for i in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 != 0:
		print('Ashishgup')
	elif n % 2 == 0:
		j = 2
		k = int(n ** 0.5)
		p = 0
		while j <= k:
			if n % j == 0:
				r = n // j
				if j % 2 != 0 or r % 2 != 0:
					p += 1
			j += 1
		if p == 0:
			print('FastestFinger')
		elif n % 4 == 0:
			print('Ashishgup')
		elif p == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')


from math import sqrt

def isPrime(n):
	for i in range(2, int(sqrt(n)) + 1):
		if n % i == 0:
			return False
	return True
t = int(input())
for _ in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 == 1 and n > 1:
		print('Ashishgup')
	elif n == 2:
		print('Ashishgup')
	else:
		count = 0
		while n > 1:
			if n % 2 == 0:
				n = n // 2
				count += 1
			else:
				break
		if n == 1:
			print('FastestFinger')
		else:
			if count > 1:
				print('Ashishgup')
			if count == 1:
				if isPrime(n):
					print('FastestFinger')
				else:
					print('Ashishgup')


import math
t = int(input())
player = ('Ashishgup', 'FastestFinger')

def chk(n):
	x = int(math.sqrt(n))
	for i in range(3, x + 1, 2):
		if n % i == 0:
			return True
	return False
for _ in range(t):
	n = int(input())
	if n == 1:
		print(player[1])
	elif n % 2 == 1 or n == 2:
		print(player[0])
	else:
		e = 0
		while n % 2 == 0:
			n //= 2
			e += 1
		if n == 1:
			print(player[1])
		elif e == 1:
			if chk(n):
				print(player[0])
			else:
				print(player[1])
		else:
			print(player[0])


t = int(input())
for _ in range(t):
	n = int(input())
	x = n
	flag = 0
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 != 0:
		print('Ashishgup')
	else:
		while x > 1:
			if x % 2 != 0:
				flag = 1
				break
			x //= 2
		if flag != 1:
			print('FastestFinger')
		elif n % 4 == 0:
			print('Ashishgup')
		else:
			x = n // 2
			flag = 0
			i = 3
			while i * i <= x:
				if x % i == 0:
					flag += 1
				i += 1
			if flag == 0:
				print('FastestFinger')
			else:
				print('Ashishgup')


from math import sqrt
from collections import defaultdict as dd
import sys
input = sys.stdin.readline
t = int(input())
while t:
	d = dd(int)
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2:
		print('Ashishgup')
	else:
		nn = n
		while nn % 2 == 0:
			d[2] += 1
			nn = nn // 2
		for i in range(3, int(sqrt(nn)) + 1, 2):
			while nn % i == 0:
				d[i] += 1
				nn = nn // i
		if nn > 2:
			d[nn] += 1
		cou = 0
		for i in d:
			if i != 2:
				cou += d[i]
		if d[2] == 1:
			if cou == 1:
				print('FastestFinger')
			else:
				print('Ashishgup')
		elif cou:
			print('Ashishgup')
		else:
			print('FastestFinger')
	t -= 1


import sys
import math

def ii():
	return sys.stdin.readline().strip()

def idata():
	return [int(x) for x in ii().split()]

def solve():
	n = int(ii())
	if n == 1:
		print('FastestFinger')
		return
	if n == 2:
		print('Ashishgup')
		return
	if n % 2 == 1:
		print('Ashishgup')
		return
	count = 0
	while n % 2 == 0:
		n //= 2
		count += 1
	k = 1
	for i in range(3, int(math.sqrt(n)) + 1):
		if n % i == 0:
			k = i
			break
	if count == 1:
		if k == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')
	elif n != 1:
		print('Ashishgup')
	else:
		print('FastestFinger')
	return
for t in range(int(ii())):
	solve()


import sys
import math
t = int(sys.stdin.readline())
for _ in range(t):
	n = int(sys.stdin.readline())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 == 0:
		cnt2 = 0
		while n % 2 == 0:
			n //= 2
			cnt2 += 1
		if n == 1:
			print('FastestFinger')
		elif cnt2 == 1:
			flag = False
			for i in range(3, round(math.sqrt(n)) + 1):
				if n % i == 0:
					flag = True
					break
			if flag:
				print('Ashishgup')
			else:
				print('FastestFinger')
		else:
			print('Ashishgup')
	else:
		print('Ashishgup')


import sys, math, cmath, time
start_time = time.time()

def qw(n):
	if n == 2:
		return True
	if n % 2 == 0 or n <= 1:
		return False
	sqr = int(math.sqrt(n)) + 1
	for divisor in range(3, sqr, 2):
		if n % divisor == 0:
			return False
	return True

def solve():
	n = inp()
	q = n
	if n == 1:
		print('FastestFinger')
	elif n % 2 != 0 or n == 2:
		print('Ashishgup')
	else:
		while q % 2 == 0:
			q = q // 2
		if q == 1:
			print('FastestFinger')
		elif n // q > 2 or not qw(q):
			print('Ashishgup')
		else:
			print('FastestFinger')

def main():
	global tt
	if not ONLINE_JUDGE:
		sys.stdin = open('input.txt', 'r')
		sys.stdout = open('output.txt', 'w')
	t = 1
	t = inp()
	for tt in range(t):
		solve()
	if not ONLINE_JUDGE:
		print('Time Elapsed :', time.time() - start_time, 'seconds')
		sys.stdout.close()

def inp():
	return int(input())

def inlt():
	return list(map(int, input().split()))

def insr():
	return input().strip()

def invr():
	return map(int, input().split())

def counter(a):
	q = [0] * max(a)
	for i in range(len(a)):
		q[a[i] - 1] = (q[a[i] - 1], 1)
	return q

def string_counter(a):
	q = [0] * 26
	for i in range(len(a)):
		q[ord(a[i]) - 97] = (q[ord(a[i]) - 97], 1)
	return q
ONLINE_JUDGE = __debug__
if ONLINE_JUDGE:
	input = sys.stdin.readline
main()


import math
t = int(input())
for _ in range(t):
	n = int(input())
	if n == 1:
		ans = 2
	elif n == 2:
		ans = 1
	elif n % 2 != 0:
		ans = 1
	else:
		count = 0
		while n % 2 == 0:
			count += 1
			n = n // 2
		if n == 1:
			ans = 2
		elif count != 1:
			ans = 1
		else:
			counter = 0
			for i in range(3, int(math.sqrt(n)) + 1, 2):
				while n % i == 0:
					counter += 1
					n = n // i
			if n > 2:
				counter += 1
			if counter == 1:
				ans = 2
			else:
				ans = 1
	if ans == 2:
		print('FastestFinger')
	if ans == 1:
		print('Ashishgup')


def dibs(n):
	if n <= 1:
		return False
	if n <= 3:
		return True
	if n % 2 == 0 or n % 3 == 0:
		return False
	i = 5
	while i * i <= n:
		if n % i == 0 or n % (i + 2) == 0:
			return False
		i += 6
	return True
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	if n % 2 == 1 or n == 2:
		print('Ashishgup')
		continue
	s = 0
	while n % 2 == 0:
		n = n // 2
		s += 1
	if n == 1:
		print('FastestFinger')
		continue
	if s == 1 and dibs(n):
		print('FastestFinger')
		continue
	print('Ashishgup')


from sys import stdin, stdout
import math, sys
from itertools import permutations, combinations
from collections import defaultdict, deque, OrderedDict
from os import path
import bisect as bi
import heapq

def yes():
	print('YES')

def no():
	print('NO')
if path.exists('input.txt'):
	sys.stdin = open('input.txt', 'r')
	sys.stdout = open('output.txt', 'w')

	def I():
		return int(input())

	def In():
		return map(int, input().split())
else:

	def I():
		return int(stdin.readline())

	def In():
		return map(int, stdin.readline().split())

def primeFactors(n):
	odd = 0
	eve = 0
	while n % 2 == 0:
		eve += 1
		n = n // 2
	for i in range(3, int(math.sqrt(n)) + 1, 2):
		while n % i == 0:
			if i & 1 == 1:
				odd += 1
			else:
				eve += 1
			n = n // i
	if n > 2:
		if n & 1 == 1:
			odd += 1
		else:
			eve += 1
	return [odd, eve]

def main():
	try:
		n = I()
		if n == 1:
			print('FastestFinger')
		elif n == 2:
			print('Ashishgup')
		elif n & 1 == 1:
			print('Ashishgup')
		else:
			l = primeFactors(n)
			win = '-1'
			if l[0] == 0 and l[1] == 1:
				win = 'A'
			elif l[0] == 0 and l[1] > 1:
				win = 'F'
			elif l[0] == 1 and l[1] == 1:
				win = 'F'
			elif l[0] == 1 and l[1] >= 1:
				win = 'A'
			elif l[0] >= 1 and l[1] == 1:
				win = 'A'
			else:
				win = 'A'
			if win == 'A':
				print('Ashishgup')
			else:
				print('FastestFinger')
	except:
		pass
M = 998244353
P = 1000000007
for _ in range(I()):
	main()


n = int(input())
w = ['Ashishgup', 'FastestFinger']
for i in range(n):
	a = int(input())
	if a == 1:
		print(w[1])
		continue
	if a % 2 == 1 or a == 2:
		print(w[0])
		continue
	number = a
	q = False
	while number % 2 == 0 or number == 1:
		if number == 1:
			q = True
			break
		else:
			number = number // 2
	if q:
		print(w[1])
		continue
	if a % 4 == 0:
		print(w[0])
		continue
	a = a // 2
	prime = False
	for j in range(3, int(a ** (1 / 2)) + 1, 1):
		if a % j == 0:
			print(w[0])
			prime = True
			break
	if not prime:
		print(w[1])


for i in range(int(input())):
	a = int(input())
	n = a & -a
	a = a // n
	if n == 2:
		if a == 1:
			a = 0
		for i in range(2, int(a ** 0.5) + 2):
			if a % i == 0:
				a = 0
	elif a != 1:
		a = 0
	print(['FastestFinger', 'Ashishgup'][a == 0])


ganaA = 'Ashishgup'
ganaB = 'FastestFinger'

def fastio():
	import sys
	from io import StringIO
	from atexit import register
	global input
	sys.stdin = StringIO(sys.stdin.read())
	input = lambda : sys.stdin.readline().rstrip()
	sys.stdout = StringIO()
	register(lambda : sys.__stdout__.write(sys.stdout.getvalue()))
fastio()

def is_prime(n):
	d = 2
	while d * d <= n:
		if n % d == 0:
			return False
		d += 1
	return True

def solve(n):
	if n == 1:
		print(ganaB)
		return
	if n & 1:
		print(ganaA)
		return
	if n == 2:
		print(ganaA)
		return
	parteImpar = n
	alpha = 0
	while parteImpar % 2 == 0:
		parteImpar //= 2
		alpha += 1
	if alpha == 1:
		if not is_prime(parteImpar):
			print(ganaA)
		else:
			print(ganaB)
	elif parteImpar > 1:
		print(ganaA)
	else:
		print(ganaB)
t = int(input())
for _ in range(t):
	n = int(input())
	solve(n)


import os
import heapq
import sys
import math
import operator
from collections import defaultdict
from io import BytesIO, IOBase

def gcd(a, b):
	if b == 0:
		return a
	else:
		return gcd(b, a % b)

def inpt():
	return [int(k) for k in input().split()]

def main():
	for _ in range(int(input())):
		n = int(input())
		if n == 1:
			print('FastestFinger')
			continue
		elif n == 2 or n & 1:
			print('Ashishgup')
			continue
		elif n - 1 & n == 0:
			print('FastestFinger')
			continue
		odd = 0
		even = 0
		while n % 2 == 0:
			n //= 2
			even += 1
		for i in range(3, int(n ** 0.5) + 1, 2):
			while n % i == 0:
				odd += 1
				n //= i
		if n > 2:
			odd += 1
		if even > 1:
			print('Ashishgup')
		elif odd == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')
BUFSIZE = 8192

class FastIO(IOBase):
	newlines = 0

	def __init__(self, file):
		self._fd = file.fileno()
		self.buffer = BytesIO()
		self.writable = 'x' in file.mode or 'r' not in file.mode
		self.write = self.buffer.write if self.writable else None

	def read(self):
		while True:
			b = os.read(self._fd, max(os.fstat(self._fd).st_size, BUFSIZE))
			if not b:
				break
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines = 0
		return self.buffer.read()

	def readline(self):
		while self.newlines == 0:
			b = os.read(self._fd, max(os.fstat(self._fd).st_size, BUFSIZE))
			self.newlines = b.count(b'\n') + (not b)
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines -= 1
		return self.buffer.readline()

	def flush(self):
		if self.writable:
			os.write(self._fd, self.buffer.getvalue())
			(self.buffer.truncate(0), self.buffer.seek(0))

class IOWrapper(IOBase):

	def __init__(self, file):
		self.buffer = FastIO(file)
		self.flush = self.buffer.flush
		self.writable = self.buffer.writable
		self.write = lambda s: self.buffer.write(s.encode('ascii'))
		self.read = lambda : self.buffer.read().decode('ascii')
		self.readline = lambda : self.buffer.readline().decode('ascii')
(sys.stdin, sys.stdout) = (IOWrapper(sys.stdin), IOWrapper(sys.stdout))
input = lambda : sys.stdin.readline().rstrip('\r\n')
main()


t = int(input())
for i in range(t):
	n = int(input())
	count = 0
	while n % 2 == 0:
		count += 1
		n = n // 2
	if n == 1:
		if count == 1:
			print('Ashishgup')
		else:
			print('FastestFinger')
	elif count != 1:
		print('Ashishgup')
	else:
		flag = False
		i = 3
		while i * i <= n:
			if n % i == 0:
				flag = True
				break
			i += 1
		if flag == True:
			print('Ashishgup')
		else:
			print('FastestFinger')


def check(x):
	if x % 2 == 0:
		return False
	d = 3
	while d * d <= x:
		if x % d == 0:
			return False
		d += 2
	return True
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	if n == 2:
		print('Ashishgup')
		continue
	p2 = 0
	while n % 2 == 0:
		n //= 2
		p2 += 1
	if n == 1:
		print('FastestFinger')
	elif p2 != 1:
		print('Ashishgup')
	elif check(n):
		print('FastestFinger')
	else:
		print('Ashishgup')


import math
from collections import defaultdict

def prime(n):
	if n == 1 or n == 0:
		return 0
	if n == 2 or n == 3:
		return 1
	if n % 2 == 0 or n % 3 == 0:
		return 0
	for i in range(5, int(math.sqrt(n)) + 1, 6):
		if n % i == 0 or n % (i + 2) == 0:
			return 0
	return 1
for i in range(int(input())):
	ans = 1
	a = int(input())
	if a == 1:
		ans = 0
	elif a == 2:
		ans = 1
	else:
		c = 0
		while a % 2 == 0:
			a //= 2
			c += 1
		if a == 1 or (c == 1 and prime(a)):
			ans = 0
	if ans:
		print('Ashishgup')
	else:
		print('FastestFinger')


import math
import math

def pr(n):
	a = []
	while n % 2 == 0:
		a.append(2)
		n = n / 2
	for i in range(3, int(math.sqrt(n)) + 1, 2):
		while n % i == 0:
			a.append(int(i))
			n = n / i
	if n > 2:
		a.append(int(n))
	return a
import math as ma
t = int(input())
for _ in range(t):
	n = int(input())
	aa = ['Ashishgup', 'FastestFinger']
	if n == 1:
		print(aa[1])
	elif n == 2:
		print(aa[0])
	elif n % 2 != 0:
		print(aa[0])
	else:
		c = 0
		while 1 > 0:
			if n % 2 == 0:
				n = n // 2
				c += 1
			else:
				break
		if n == 1:
			print(aa[1])
		elif c == 1:
			a = pr(n)
			b = 0
			for i in range(len(a)):
				if a[i] % 2 != 0:
					b += 1
			if b > 1:
				print(aa[0])
			else:
				print(aa[1])
		else:
			print(aa[0])


from math import *

def prime(n):
	for i in range(2, min(50000, n)):
		if n % i == 0:
			return False
	return True
t = int(input())
for i in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	if n == 2:
		print('Ashishgup')
		continue
	if n % 2 != 0:
		print('Ashishgup')
		continue
	elif n % 4 != 0:
		if prime(int(n / 2)):
			print('FastestFinger')
			continue
		else:
			print('Ashishgup')
			continue
	else:
		while n % 2 == 0:
			n = n / 2
		if n == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')


import os
import sys
from io import BytesIO, IOBase
BUFSIZE = 8192

class FastIO(IOBase):
	newlines = 0

	def __init__(self, file):
		self._fd = file.fileno()
		self.buffer = BytesIO()
		self.writable = 'x' in file.mode or 'r' not in file.mode
		self.write = self.buffer.write if self.writable else None

	def read(self):
		while True:
			b = os.read(self._fd, max(os.fstat(self._fd).st_size, BUFSIZE))
			if not b:
				break
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines = 0
		return self.buffer.read()

	def readline(self):
		while self.newlines == 0:
			b = os.read(self._fd, max(os.fstat(self._fd).st_size, BUFSIZE))
			self.newlines = b.count(b'\n') + (not b)
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines -= 1
		return self.buffer.readline()

	def flush(self):
		if self.writable:
			os.write(self._fd, self.buffer.getvalue())
			(self.buffer.truncate(0), self.buffer.seek(0))

class IOWrapper(IOBase):

	def __init__(self, file):
		self.buffer = FastIO(file)
		self.flush = self.buffer.flush
		self.writable = self.buffer.writable
		self.write = lambda s: self.buffer.write(s.encode('ascii'))
		self.read = lambda : self.buffer.read().decode('ascii')
		self.readline = lambda : self.buffer.readline().decode('ascii')
(sys.stdin, sys.stdout) = (IOWrapper(sys.stdin), IOWrapper(sys.stdout))
input = lambda : sys.stdin.readline().rstrip('\r\n')
from math import gcd, ceil

def pre(s):
	n = len(s)
	pi = [0] * n
	for i in range(1, n):
		j = pi[i - 1]
		while j and s[i] != s[j]:
			j = pi[j - 1]
		if s[i] == s[j]:
			j += 1
		pi[i] = j
	return pi

def prod(a):
	ans = 1
	for each in a:
		ans = ans * each
	return ans

def lcm(a, b):
	return a * b // gcd(a, b)

def binary(x, length=16):
	y = bin(x)[2:]
	return y if len(y) >= length else '0' * (length - len(y)) + y
from collections import deque

def odddiv(n):
	st = set()
	poss = []
	for i in range(2, int(n ** 0.5) + 6):
		if i >= n:
			break
		if n % i or i in st:
			continue
		if i % 2 == 1 and n // i % 2 == 0:
			st.add(i)
			st.add(n // i)
			poss += [[i, n // i]]
		if n // i % 2 == 1 and i % 2 == 0:
			st.add(i)
			st.add(n // i)
			poss += [[n // i, i]]
	return poss

def check(n):
	if n == 2:
		return True
	if n % 2 == 1 and n != 1:
		return True
	if n == 1:
		return False
	od = odddiv(n)
	for i in od:
		if not check(i[1]):
			return True
	return False
for _ in range(int(input()) if True else 1):
	n = int(input())
	print('Ashishgup' if check(n) else 'FastestFinger')


from bisect import *
from collections import *
from math import *
from heapq import *
from typing import List
from itertools import *
from operator import *
from functools import *

@lru_cache(None)
def fact(x):
	if x < 2:
		return 1
	return fact(x - 1) * x

@lru_cache(None)
def per(i, j):
	return fact(i) // fact(i - j)

@lru_cache(None)
def com(i, j):
	return per(i, j) // fact(j)

def linc(f, t, l, r):
	while l < r:
		mid = (l + r) // 2
		if t > f(mid):
			l = mid + 1
		else:
			r = mid
	return l

def rinc(f, t, l, r):
	while l < r:
		mid = (l + r + 1) // 2
		if t < f(mid):
			r = mid - 1
		else:
			l = mid
	return l

def ldec(f, t, l, r):
	while l < r:
		mid = (l + r) // 2
		if t < f(mid):
			l = mid + 1
		else:
			r = mid
	return l

def rdec(f, t, l, r):
	while l < r:
		mid = (l + r + 1) // 2
		if t > f(mid):
			r = mid - 1
		else:
			l = mid
	return l

def isprime(n):
	for i in range(2, int(n ** 0.5) + 1):
		if n % i == 0:
			return False
	return True

def power2(n):
	while not n & 1:
		n >>= 1
	return n == 1
t = int(input())
for i in range(t):
	n = int(input())
	if n == 1 or (n % 4 == 0 and power2(n)):
		print('FastestFinger')
	elif n == 2 or n & 1 or n % 4 == 0:
		print('Ashishgup')
	else:
		print('FastestFinger' if isprime(n // 2) else 'Ashishgup')


for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2 or (n % 2 == 1 and n != 1):
		print('Ashishgup')
	else:
		s = 'FastestFinger'
		for i in range(3, int(n ** 0.5) + 1):
			if n % i == 0 and (i % 2 != 0 or n // i % 2 != 0):
				s = 'Ashishgup'
				break
		print(s)


import math
for _ in range(int(input())):
	n = int(input())
	FF = 'FastestFinger'
	A = 'Ashishgup'
	if n == 1:
		print(FF)
	elif n == 2:
		print(A)
	elif n % 2 == 1:
		print(A)
	elif n % 2 == 0:
		temp = n
		i = 0
		while True:
			if temp % 2 == 0:
				temp = temp // 2
			else:
				break
			i += 1
		if i == 1:
			x = 0
			for j in range(3, int((n // 2) ** 0.5) + 1):
				if n // 2 % j == 0:
					print(A)
					x = 1
					break
			if x == 0:
				print(FF)
		elif temp == 1:
			print(FF)
		else:
			print(A)


import math

def prime(n):
	for i in range(2, int(n ** 0.5) + 1):
		if n % i == 0:
			return False
	return True
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 != 0:
		print('Ashishgup')
	elif math.log2(n) == int(math.log2(n)):
		print('FastestFinger')
	elif prime(n // 2):
		print('FastestFinger')
	else:
		print('Ashishgup')


from sys import stdin, stdout

class SOLVE:

	def sieve(self, prime):
		check = {}
		for i in range(3, 178, 2):
			if i not in check:
				for j in range(i * i, 31623, 2 * i):
					check[j] = 1
		for i in range(3, 31623, 2):
			if i not in check:
				prime.append(i)

	def solve(self):
		r = input
		w = stdout.write
		prime = []
		self.sieve(prime)
		name = ['Ashishgup', 'FastestFinger']
		ans = []
		for i in range(int(input())):
			n = int(input())
			even_prime_cnt = odd_prime_cnt = 0
			while not n % 2:
				n //= 2
				even_prime_cnt += 1
			for i in prime:
				while not n % i:
					n //= i
					odd_prime_cnt += 1
			if n > 1:
				odd_prime_cnt += 1
			if even_prime_cnt == odd_prime_cnt == 0:
				ans += [name[1], '\n']
			elif even_prime_cnt == 0 and odd_prime_cnt > 0:
				ans += [name[0], '\n']
			elif even_prime_cnt == 1 and odd_prime_cnt == 0:
				ans += [name[0], '\n']
			elif even_prime_cnt > 1 and odd_prime_cnt == 0:
				ans += [name[1], '\n']
			elif even_prime_cnt == 1 and odd_prime_cnt == 1:
				ans += [name[1], '\n']
			else:
				ans += [name[0], '\n']
		w(''.join(ans))

def main():
	s = SOLVE()
	s.solve()
main()


from math import sqrt

def oddDivisors(n):
	temp = []
	i = 0
	while n % 2 == 0:
		n //= 2
	if n == 1:
		return 0
	for i in range(3, int(sqrt(n)) + 1, 2):
		if n % i == 0:
			return 2
	return 1
(F, A) = ('FastestFinger', 'Ashishgup')
for _ in range(int(input())):
	n = int(input())
	chance = 'A'
	if n == 1:
		print(F if chance == 'A' else A)
	elif n == 2 or n % 2:
		print(A if chance == 'A' else F)
	else:
		l = oddDivisors(n)
		if l == 0:
			print(F)
		elif n % 2 == 0 and n % 4:
			if l == 1:
				print(F)
			else:
				print(A)
		elif n % 4 == 0:
			print(A)


import math
t = int(input())
for w in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 == 1:
		print('Ashishgup')
	elif n == 2:
		print('Ashishgup')
	elif math.log2(n) == int(math.log2(n)):
		print('FastestFinger')
	elif n % 4 == 0:
		print('Ashishgup')
	else:
		k = n // 2
		for i in range(2, int(math.sqrt(k)) + 1):
			if k % i == 0:
				k = -1
				break
		if k == -1:
			print('Ashishgup')
		else:
			print('FastestFinger')


import os
import math
import sys
debug = True
if debug and os.path.exists('input.in'):
	input = open('input.in', 'r').readline
else:
	debug = False
	input = sys.stdin.readline

def inp():
	return int(input())

def inlt():
	return list(map(int, input().split()))

def insr():
	s = input()
	return s[:len(s) - 1]

def invr():
	return map(int, input().split())
test_count = inp()
for t in range(test_count):
	if debug:
		print('Test Case #', t + 1)
	n = inp()
	if n == 1:
		print('FastestFinger')
	elif n == 2 or n % 2 == 1:
		print('Ashishgup')
	else:
		factors = 0
		reminder = 1
		while n > 1 and n % 2 == 0:
			reminder *= 2
			n = n // 2
		max_value = int(math.sqrt(n))
		start = 3
		if n > 1:
			factors = 1
		for i in range(start, max_value + 1, 2):
			if n % i == 0:
				if i * i == n:
					factors += 1
				else:
					factors += 2
				break
		if factors == 0 and reminder > 2 or (factors == 1 and reminder == 2):
			print('FastestFinger')
		else:
			print('Ashishgup')


import math

def printDivisors(n):
	i = 1
	a = []
	while i <= math.sqrt(n):
		if n % i == 0:
			if n / i == i:
				if i % 2 == 1:
					a.append(i)
			else:
				if i % 2 == 1:
					a.append(i)
				if n // i % 2 == 1:
					a.append(n // i)
		i = i + 1
	return a
for _ in range(int(input())):
	n = int(input())
	a = 'FastestFinger'
	b = 'Ashishgup'
	if n == 1:
		print(a)
	elif n == 2:
		print(b)
	elif n % 2 == 1:
		print(b)
	else:
		z = printDivisors(n)
		z.remove(1)
		if len(z) >= 1:
			if n // z[-1] == 2:
				print(a)
			else:
				print(b)
		else:
			print(a)


def isPrime(n):
	if n % 2 == 0:
		return n == 2
	d = 3
	while d * d <= n and n % d != 0:
		d += 2
	return d * d > n

def task_C():
	t = int(input())
	for _ in range(t):
		n = int(input())
		if n == 1:
			print('FastestFinger')
		elif n == 2 or n % 2 == 1:
			print('Ashishgup')
		else:
			power_of_2 = 0
			curr_n = n
			while curr_n % 2 == 0:
				power_of_2 += 1
				curr_n = curr_n / 2
			if curr_n == 1:
				print('FastestFinger')
			elif power_of_2 == 1 and isPrime(curr_n):
				print('FastestFinger')
			else:
				print('Ashishgup')

def main():
	task_C()
main()


from math import sqrt

def countfact(n):
	count = 0
	for i in range(3, int(sqrt(n)) + 1, 2):
		while n % i == 0:
			count += 1
			n = n // i
			if count > 1:
				break
		if count > 1:
			break
	if n > 2:
		count += 1
	return count
for _ in range(int(input())):
	n = int(input())
	if n % 2 == 1 and n > 1:
		print('Ashishgup')
		continue
	if n == 1:
		print('FastestFinger')
		continue
	if n == 2:
		print('Ashishgup')
		continue
	if n % 2 == 0 and n > 2:
		count_2 = 0
		while n % 2 == 0:
			count_2 += 1
			n = n // 2
		if n > 1:
			if count_2 == 1:
				count = countfact(n)
				if count == 1:
					print('FastestFinger')
					continue
				else:
					print('Ashishgup')
					continue
			else:
				print('Ashishgup')
				continue
		else:
			print('FastestFinger')
			continue


def isPrime(n):
	if n <= 1:
		return False
	if n <= 3:
		return True
	if n % 2 == 0 or n % 3 == 0:
		return False
	i = 5
	while i * i <= n:
		if n % i == 0 or n % (i + 2) == 0:
			return False
		i = i + 6
	return True

def isPowerOfTwo(n):
	if n == 0:
		return False
	while n != 1:
		if n % 2 != 0:
			return False
		n = n // 2
	return True
t = int(input())
for i in range(t):
	n = int(input())
	win = 'Ashishgup'
	loss = 'FastestFinger'
	if n == 1:
		print(loss)
	elif n == 2:
		print(win)
	elif isPowerOfTwo(n):
		print(loss)
	elif n % 2 == 1:
		print(win)
	elif n % 4 == 0:
		print(win)
	elif isPrime(int(n / 2)):
		print(loss)
	else:
		print(win)


import math
import datetime
import collections
import statistics
import itertools
from functools import reduce

def ip(num):
	for i in range(2, int(math.sqrt(num)) + 1):
		if num % i == 0:
			return False
	return True

def input_list():
	ll = list(map(int, input().split()))
	return ll
tc = int(input())
(ash, faf) = ('Ashishgup', 'FastestFinger')
for _ in range(tc):
	n = int(input())
	if n == 1:
		print(faf)
	elif n == 2:
		print(ash)
	elif n % 2 == 1:
		print(ash)
	elif not n & n - 1:
		print(faf)
	elif ip(n // 2):
		print(faf)
	else:
		print(ash)


import math as m

def f1():
	print('FastestFinger')

def f2():
	print('Ashishgup')
t = int(input())
for i in range(0, t):
	n = int(input())
	if n == 1:
		f1()
	elif n == 2:
		f2()
	elif n % 2 == 1:
		f2()
	elif n & n - 1 == 0:
		f1()
	elif n % 4 == 0:
		f2()
	else:
		n = n // 2
		f = False
		for i in range(2, int(m.sqrt(n)) + 1):
			if n % i == 0:
				f = True
				break
		if f == True:
			f2()
		else:
			f1()


def isPrime(n):
	if n == 1:
		return 0
	if n == 3 or n == 5:
		return 1
	for i in range(2, int(n ** 0.5) + 2):
		if n % i == 0:
			return 2
	return 1
t = int(input())
for i in range(t):
	n = int(input())
	anss = ['Ashishgup', 'FastestFinger']
	if n == 1:
		print(anss[1])
	elif n % 2 == 1:
		print(anss[0])
	elif n == 2:
		print(anss[0])
	else:
		ans = 0
		ans2 = 0
		num = 2
		while n % num == 0:
			ans2 += 1
			n //= num
		if isPrime(n) == 1:
			if ans2 == 1:
				print(anss[1])
			else:
				print(anss[0])
		elif isPrime(n) == 0:
			if ans2 == 1:
				print(anss[0])
			else:
				print(anss[1])
		else:
			print(anss[0])


from math import log2, ceil, floor, sqrt

def ans(n):
	if n == 1:
		return 'FastestFinger'
	if n % 2 == 1:
		return 'Ashishgup'
	if n == 2:
		return 'Ashishgup'
	if ceil(log2(n)) == floor(log2(n)):
		return 'FastestFinger'
	if n % 4 == 0:
		return 'Ashishgup'
	p = int(n / 2)
	for i in range(3, int(sqrt(p)) + 1, 2):
		if p % i == 0:
			return 'Ashishgup'
	return 'FastestFinger'
t = int(input())
L = []
for i in range(t):
	L.append(ans(int(input())))
for l in L:
	print(l)


def factorize(n):
	factors = list()
	for d in range(2, int(n ** 0.5) + 1):
		while n % d == 0:
			factors.append(d)
			n //= d
	if n > 1:
		factors.append(n)
	return factors

def find_divs(n):
	divs = factorize(n)
	(even_d, odd_d) = ([i for i in divs if i % 2 == 0], [i for i in divs if i % 2 != 0])
	return (even_d, odd_d)
t = int(input())
for _ in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	if n == 2:
		print('Ashishgup')
		continue
	if n % 2 != 0:
		print('Ashishgup')
		continue
	(even_d, odd_d) = find_divs(n)
	if len(odd_d) == 0:
		print('FastestFinger')
	elif len(even_d) + len(odd_d) - 1 >= 2:
		print('Ashishgup')
	else:
		print('FastestFinger')


import math

def countDivisors(n):
	cnt = 0
	for i in range(1, int(math.sqrt(n)) + 1):
		if n % i == 0:
			if n / i == i:
				cnt = cnt + 1
			else:
				cnt = cnt + 2
	return cnt
for i in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 != 0:
		print('Ashishgup')
	else:
		count = 0
		while n % 2 == 0:
			count += 1
			n //= 2
		if n == 1 and count > 1:
			print('FastestFinger')
		elif n == 1 and count == 1:
			print('Ashishgup')
		elif n > 1 and count == 1:
			if countDivisors(n) > 2:
				print('Ashishgup')
			else:
				print('FastestFinger')
		else:
			print('Ashishgup')


import math

def primeFactors(n):
	cnt = 0
	cnt1 = 0
	while n % 2 == 0:
		n = n // 2
		cnt1 += 1
	for i in range(3, int(math.sqrt(n)) + 1, 2):
		while n % i == 0:
			if i % 2 != 0:
				cnt += 1
			else:
				cnt1 += 1
			n = n // i
	if n > 2:
		if n % 2 != 0:
			cnt += 1
		else:
			cnt1 += 1
	return (cnt, cnt1)
t = int(input())
for _ in range(t):
	n = int(input())
	if n > 1:
		if n % 2 != 0:
			print('Ashishgup')
		else:
			(x, y) = primeFactors(n)
			if x > 0 and y > 1 or (x > 1 and y == 1) or (x == 0 and y == 1):
				print('Ashishgup')
			else:
				print('FastestFinger')
	else:
		print('FastestFinger')


from math import sqrt, ceil

def checkIfPrime(n):
	for i in range(2, int(ceil(sqrt(n))) + 1):
		if n % i == 0:
			return 0
	return 1
for _ in range(int(input())):
	n = int(input())
	x = n
	while x > 1 and x % 2 == 0:
		x = x // 2
	if n % 2 == 0:
		if x == 1:
			if n > 2:
				print('FastestFinger')
			else:
				print('Ashishgup')
		elif n // x > 2:
			print('Ashishgup')
		elif checkIfPrime(x):
			print('FastestFinger')
		else:
			print('Ashishgup')
	elif n == 1:
		print('FastestFinger')
	else:
		print('Ashishgup')


from math import ceil, sqrt

def oddfactors(n):
	for x in range(2, ceil(sqrt(n))):
		if n % x == 0:
			if x % 2 != 0 and x != 1:
				return 1
			elif n / x % 2 != 0 and x != 1:
				return 1
	return 0

def primefactors(n):
	v = 0
	for x in range(3, ceil(sqrt(n)) + 2, 2):
		while n % x == 0:
			v += 1
			n /= x
	if n > 2:
		v += 1
	return v
t = int(input())
while t:
	n = int(input())
	if n % 2 != 0 and n > 1:
		print('Ashishgup')
	elif n % 2 != 0:
		print('FastestFinger')
	else:
		h = oddfactors(n)
		if h:
			if n % 4 == 0:
				print('Ashishgup')
			else:
				g = primefactors(n)
				if g == 1:
					print('FastestFinger')
				else:
					print('Ashishgup')
		elif n == 2:
			print('Ashishgup')
		else:
			print('FastestFinger')
	t -= 1


from sys import stdin
import math
A = int(stdin.readline())
for t in range(0, A):
	B = int(stdin.readline())
	K = 0
	if B == 1:
		print('FastestFinger')
	elif B == 2:
		print('Ashishgup')
	elif B % 2 == 1:
		print('Ashishgup')
	else:
		count = 0
		while B % 2 == 0:
			B = B / 2
			count += 1
			if B == 1:
				K = 1
				print('FastestFinger')
				K = 1
				break
		L = 0
		if count > 1 and K == 0:
			print('Ashishgup')
			K = 1
		if K == 0:
			for t in range(2, int(math.floor(math.sqrt(B))) + 1):
				if B % t == 0:
					print('Ashishgup')
					L = 1
					break
			if L == 0:
				print('FastestFinger')


def isPrime(n):
	for i in range(3, int(n ** 0.5) + 1):
		if n % i == 0:
			return 0
	return 1
for _ in range(int(input())):
	n = int(input())
	k = n
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 == 1:
		print('Ashishgup')
	else:
		c = 0
		while n % 2 == 0:
			c += 1
			n //= 2
		if n == 1:
			print('FastestFinger')
		elif c == 1:
			if isPrime(n):
				print('FastestFinger')
			else:
				print('Ashishgup')
		else:
			print('Ashishgup')


import math
for _ in range(int(input())):
	N = int(input())
	a = 'FastestFinger'
	b = 'Ashishgup'
	if N == 1:
		print(a)
	elif N == 2:
		print(b)
	elif N % 2 != 0:
		print(b)
	elif N & N - 1 == 0:
		print(a)
	else:
		t = N
		count = 0
		while t % 2 == 0:
			t = t // 2
			count += 1
		if count == 1:
			factor = 0
			for j in range(2, int(math.sqrt(t)) + 2):
				if t % j == 0:
					factor += 1
			if factor == 0:
				print(a)
			else:
				print(b)
		else:
			print(b)


import math

def factors(n):
	ans = []
	while n % 2 == 0:
		ans.append(2)
		n = n // 2
	for i in range(3, int(math.sqrt(n)) + 1, 2):
		while n % i == 0:
			ans.append(i)
			n = n // i
	if n > 2:
		ans.append(n)
	return ans
x = int(input())
for i in range(x):
	y = int(input())
	if y == 1:
		print('FastestFinger')
		continue
	m = factors(y)
	t = m.count(2)
	if len(m) == 1 and t == 1:
		print('Ashishgup')
	elif t == 0:
		print('Ashishgup')
	elif len(m) == t:
		print('FastestFinger')
	elif t > 1:
		print('Ashishgup')
	elif t == 1:
		if len(m) != 2:
			print('Ashishgup')
		else:
			print('FastestFinger')


import math

def is_prime(n):
	if n == 1:
		return False
	i = 2
	while i * i <= n:
		if n % i == 0:
			return False
		i += 1
	return True

def solution():
	n = int(input())
	if n == 1 or (n > 2 and math.log2(n).is_integer()):
		print('FastestFinger')
		return
	if n % 2 != 0 or n == 2:
		print('Ashishgup')
		return
	if n % 4 == 0:
		print('Ashishgup')
		return
	n = n // 2
	if is_prime(n):
		print('FastestFinger')
		return
	print('Ashishgup')
T = int(input())
while T:
	solution()
	T -= 1


t = int(input())

def isPrime(n):
	if n == 1:
		return 0
	if n == 2 or n == 3:
		return 1
	if n % 2 == 0 or n % 3 == 0:
		return 0
	i = 5
	w = 2
	while i * i <= n:
		if n % i == 0:
			return 0
		i = i + w
		w = 6 - w
	return 1
for _ in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 == 1 or n == 2:
		print('Ashishgup')
	elif n & n - 1 == 0:
		print('FastestFinger')
	else:
		p = n // 2
		if isPrime(p):
			print('FastestFinger')
		else:
			print('Ashishgup')


for t in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 != 0:
		print('Ashishgup')
	else:
		flag = 1
		for i in range(3, int(n ** 0.5) + 1):
			if n % i == 0:
				if i % 2 != 0 or n // i % 2 == 1:
					print('Ashishgup')
					flag = 0
					break
			if flag == 0:
				break
		if flag == 1:
			print('FastestFinger')


def cin():
	return map(int, input().split())

def is_prime(x):
	for i in range(3, int(x ** 0.5) + 1):
		if not x % i:
			return False
	return True
for t in range(int(input())):
	n = int(input())
	if n % 2 and n > 1 or n == 2:
		print('Ashishgup')
	elif n == 1:
		print('FastestFinger')
	elif not n & n - 1 or (n % 4 and is_prime(n // 2)):
		print('FastestFinger')
	else:
		print('Ashishgup')


t = int(input())
for you in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	if n == 2:
		print('Ashishgup')
		continue
	if n % 2:
		print('Ashishgup')
	else:
		factors = []
		i = 2
		while i * i <= n:
			if n % i == 0:
				count = 0
				while n % i == 0:
					n = n // i
					count += 1
				factors.append((i, count))
			i += 1
		if n != 1:
			factors.append((n, 1))
		if len(factors) == 1 or (len(factors) == 2 and factors[1][1] == 1 and (factors[0][1] == 1)):
			print('FastestFinger')
		else:
			print('Ashishgup')


import sys
import math
read = lambda : sys.stdin.readline()

def isPow2(k):
	while k % 2 == 0:
		k = k / 2
	if k == 1:
		return True
	return False

def isPrime(k):
	if k % 2 == 0:
		return False
	for i in range(3, int(math.sqrt(k)) + 2, 2):
		if k % i == 0:
			return False
	return True
L = 'FastestFinger'
W = 'Ashishgup'
T = int(read())
for t in range(T):
	n = int(read())
	if n == 1:
		print(L)
		continue
	if n % 2 == 1 or n == 2:
		print(W)
		continue
	if isPow2(n):
		print(L)
	elif n // 2 % 2 == 1:
		if not isPrime(n // 2):
			print(W)
		else:
			print(L)
	else:
		print(W)


def prime(n):
	for i in range(2, int(n ** 0.5) + 2):
		if n % i == 0:
			return False
	return True
t = int(input())
for i in range(t):
	n = int(input())
	i = 2
	arr = []
	while i < 50:
		arr.append(2 ** i)
		i += 1
	if n == 1:
		print('FastestFinger')
	elif n % 2 != 0 or n == 2:
		print('Ashishgup')
	elif n in arr or prime(n // 2):
		print('FastestFinger')
	else:
		print('Ashishgup')


def isPrime(n):
	if n <= 3:
		return True
	else:
		for x in range(2, int(n ** 0.5) + 1):
			if n % x == 0:
				return False
		return True

def helper(n):
	count = 0
	while n > 1 and n % 2 == 0:
		n = n // 2
		count += 1
	return (count, n)
t = int(input())
for _ in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 != 0 or n == 2:
		print('Ashishgup')
	else:
		(count, val) = helper(n)
		if count >= 2 and val > 1 or not isPrime(val):
			print('Ashishgup')
		else:
			print('FastestFinger')


import math

def printDivisors(n):
	i = 1
	ct = 0
	while i <= math.sqrt(n):
		if n % i == 0:
			if n // i == i:
				if i % 2 != 0 and i != 1:
					ct += 1
			else:
				if i % 2 != 0 and i != 1:
					ct += 1
				if n // i % 2 != 0 and n // i != 1:
					ct += 1
		if ct > 1:
			return 0
		i = i + 1
	return 1
for _ in range(int(input())):
	t = int(input())
	if t % 2 != 0:
		if t == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')
	else:
		p = int(math.log(t, 2))
		if pow(2, p) == t:
			if t == 2:
				print('Ashishgup')
			else:
				print('FastestFinger')
		else:
			lk = t // 2
			if lk % 2 == 0:
				print('Ashishgup')
			else:
				yu = printDivisors(lk)
				if yu == 0:
					print('Ashishgup')
				else:
					print('FastestFinger')


def isPrime(n):
	i = 2
	while i * i <= n:
		if n % i == 0:
			return False
		i += 1
	return True

def solve(n):
	if n == 1:
		win = 2
	elif n == 2:
		win = 1
	elif n % 2 != 0:
		win = 1
	elif n & n - 1 == 0:
		win = 2
	elif n % 4 != 0 and isPrime(n // 2):
		win = 2
	else:
		win = 1
	if win == 2:
		return 'FastestFinger'
	else:
		return 'Ashishgup'
for _ in range(int(input())):
	n = int(input())
	print(solve(n))


q = [2 ** i for i in range(32)]
for _ in ' ' * int(input()):
	a = int(input())
	if a == 1:
		print('FastestFinger')
	elif a & 1 or a == 2:
		print('Ashishgup')
	elif a in q:
		print('FastestFinger')
	else:
		z = 0
		o = a // 2
		for i in range(2, int(o ** 0.5) + 1):
			if o % i == 0:
				z = 1
				break
		if z == 0:
			print('FastestFinger')
		else:
			print('Ashishgup')


def prime(a):
	while a % 2 == 0:
		a = a // 2
	i = 3
	m = 0
	while i * i <= a:
		if a % i == 0:
			return 2
		else:
			i += 2
	if a == 1:
		return 0
	return 1
answ = ['Ashishgup', 'FastestFinger']
t = int(input())
for q in range(t):
	n = int(input())
	n1 = n
	k_o = prime(n)
	if n1 == 1:
		print(answ[1])
	elif k_o == 1 and n1 % 2 == 0 and (n1 % 4 != 0) or (k_o == 0 and n1 % 4 == 0):
		print(answ[1])
	else:
		print(answ[0])


from math import log2

def factorize(a):
	arr = {2: 0}
	d = 2
	while d * d <= a:
		if a % d == 0:
			arr[d] = 0
		while a % d == 0:
			a //= d
			arr[d] += 1
		d += 1
	if a > 1:
		if a not in arr.keys():
			arr[a] = 1
		else:
			arr[a] += 1
	return arr
t = int(input())
for _ in range(t):
	n = int(input())
	facts = factorize(n)
	if n == 1:
		print('FastestFinger')
	elif facts[2] == 0:
		print('Ashishgup')
	elif n == 2:
		print('Ashishgup')
	elif len(facts.values()) == 1:
		print('FastestFinger')
	elif facts[2] == 1 and sum(facts.values()) - facts[2] == 1:
		print('FastestFinger')
	else:
		print('Ashishgup')


from sys import stdin, stdout
import math

def find_divisors(n):
	facts = []
	for i in range(2, int(math.sqrt(n)) + 1):
		if not n % i:
			facts.append(i)
			facts.append(n // i)
	return list(set(facts))
test = int(stdin.readline())
for _ in range(test):
	n = int(stdin.readline())
	if n == 1:
		print('FastestFinger')
		continue
	if n == 2:
		print('Ashishgup')
		continue
	if n & 1:
		print('Ashishgup')
		continue
	else:
		facts = find_divisors(n)
		odd = 0
		even = 0
		for i in facts:
			if i & 1:
				odd += 1
			else:
				even += 1
		if odd >= 1:
			if even != 1:
				print('Ashishgup')
				continue
			print('FastestFinger')
			continue
		print('FastestFinger')
		continue


from math import sqrt
for T in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 == 1:
		print('Ashishgup')
	else:
		cnt = 0
		while n % 2 == 0:
			cnt += 1
			n //= 2
		if n == 1:
			print('FastestFinger')
			continue
		odd = 0
		for i in range(3, int(sqrt(n)) + 1, 2):
			if n % i == 0:
				while n % i == 0:
					odd += 1
					n //= i
			if odd >= 2:
				break
		if n > 1:
			odd += 1
		if cnt == 1 and odd == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')


from math import sqrt
import sys
reader = (s.rstrip() for s in sys.stdin)
input = reader.__next__
t = int(input())
one = 'FastestFinger'
two = 'Ashishgup'
for _ in range(t):
	n = int(input())
	if n == 1:
		print(one)
		continue
	if n & 1 or n == 2:
		print(two)
		continue
	root = int(sqrt(n))
	powers = {}
	for x in range(2, root + 1):
		if n % x == 0:
			c = 0
			while n % x == 0:
				c += 1
				n = n // x
			powers[x] = c
	if n > 1:
		powers[n] = 1
	facts = list(powers.keys())
	if len(facts) == 1:
		print(one)
		continue
	if len(facts) == 2 and powers[2] == 1 and (powers[facts[1]] == 1):
		print(one)
	else:
		print(two)


from math import sqrt
it = lambda : list(map(int, input().strip().split()))

def win1():
	print('Ashishgup')

def win2():
	print('FastestFinger')

def isPrime(n):
	for f in range(2, int(sqrt(n)) + 1):
		if n % f == 0:
			return False
	return True

def solve():
	n = int(input())
	if n == 1:
		win2()
		return
	if n == 2 or n % 2:
		win1()
		return
	if n % 4 == 0:
		while n % 2 == 0:
			n >>= 1
		if n == 1:
			win2()
		else:
			win1()
		return
	assert n % 2 == 0
	if isPrime(n >> 1):
		win2()
	else:
		win1()
T = int(input())
for _ in range(T):
	solve()


def check(number):
	x = number
	i = 1
	while i * i <= number:
		if number % i == 0:
			return False
		i += 1
	return True

def ans(n):
	f = 0
	d = 0
	x = n
	if n % 2 != 0 or n == 2:
		print('Ashishgup')
	else:
		while x % 2 == 0:
			x //= 2
			d += 1
		i = 3
		while i * i <= x:
			if x % i == 0:
				x = x // i
				f += 1
			i += 2
		if x > 2:
			f += 1
		if f == 0 or (f == 1 and d == 1):
			print('FastestFinger')
		else:
			print('Ashishgup')
t = int(input())
while t > 0:
	n = int(input())
	if n == 1:
		print('FastestFinger')
	else:
		ans(n)
	t -= 1


from sys import stdin
import math
inp = stdin.readline

def divisors(n):
	divis = []
	i = 1
	while i <= math.sqrt(n):
		if n % i == 0:
			if n / i == i:
				if i % 2 and i != 1:
					divis.append(i)
			else:
				if i != 1 and i % 2:
					divis.append(i)
				if n // i % 2 and n // i != 1:
					divis.append(n // i)
		i = i + 1
	return divis
t = int(inp())

def best(n, counter):
	if False:
		pass
	else:
		div = divisors(n)
		for i in div:
			ans = best(n // i, counter + 1)
			if ans == 'Ashishgup' and (not counter % 2):
				return 'Ashishgup'
			elif ans == 'FastestFinger' and counter % 2:
				return 'FastestFinger'
		if n > 1 and (not div):
			return best(n - 1, counter + 1)
		elif counter % 2:
			return 'Ashishgup'
		else:
			return 'FastestFinger'
for _ in range(t):
	n = int(inp())
	counter = 0
	if n == 1:
		print('FastestFinger')
		continue
	elif n % 2:
		print('Ashishgup')
		continue
	else:
		print(best(n, 0))


from collections import defaultdict as dd
from collections import deque
import bisect
import heapq

def ri():
	return int(input())

def rl():
	return list(map(int, input().split()))
powers = [1]
powers += [pow(2, i) for i in range(2, 30)]
powers = set(powers)

def primes(n):
	sieve = [True] * n
	for i in range(3, int(n ** 0.5) + 1, 2):
		if sieve[i]:
			sieve[i * i::2 * i] = [False] * ((n - i * i - 1) // (2 * i) + 1)
	return [2] + [i for i in range(3, n, 2) if sieve[i]]
N = 10 ** 9
m = int(N ** 0.5) + 2
P = primes(m)

def solve():
	n = ri()
	if n == 1 or n in powers:
		print('FastestFinger')
	elif n == 2 or n % 2 == 1:
		print('Ashishgup')
	else:
		n //= 2
		isPrime = True
		for p in P:
			if p * p > n:
				break
			elif n % p == 0:
				isPrime = False
				break
		if isPrime:
			print('FastestFinger')
		else:
			print('Ashishgup')
mode = 'T'
if mode == 'T':
	t = ri()
	for i in range(t):
		solve()
else:
	solve()


N = 50000

def is_prime(n):
	for i in range(2, min(n, N)):
		if n % i == 0:
			return 0
	return 1
for _ in range(int(input())):
	n = int(input())
	lose = n == 1
	if n > 2 and n % 2 == 0:
		if n & n - 1 == 0:
			lose = 1
		elif n % 4 != 0 and is_prime(int(n / 2)):
			lose = 1
	if lose:
		print('FastestFinger')
	else:
		print('Ashishgup')


import sys
from fractions import gcd
from math import ceil, sqrt, sin, pi, tan
from collections import defaultdict
read = sys.stdin.buffer.readline
import heapq
mi = lambda : map(int, read().split())
li = lambda : list(mi())
cin = lambda : int(read())

def sol():
	pass

def isp(n):
	i = 2
	while i * i <= n:
		if n % i == 0:
			return False
		i += 1
	return True
for _t in range(cin()):
	n = cin()
	prd = 1
	while n % 2 == 0:
		n //= 2
		prd *= 2
	if n > 1 and prd != 2 or (prd == 2 and n == 1) or (prd == 2 and (not isp(n))):
		print('Ashishgup')
	else:
		print('FastestFinger')


from sys import stdin, setrecursionlimit, stdout
from collections import deque
from math import sqrt, floor, ceil, log, log2, log10, pi, gcd, sin, cos, asin

def ii():
	return int(stdin.readline())

def fi():
	return float(stdin.readline())

def mi():
	return map(int, stdin.readline().split())

def fmi():
	return map(float, stdin.readline().split())

def li():
	return list(mi())

def si():
	return stdin.readline().rstrip()

def lsi():
	return list(si())
res = ['Yes', 'No']
ans = ['FastestFinger', 'Ashishgup']
test_case = ii()
while test_case:
	test_case -= 1
	n = ii()
	if n < 3:
		f = (n - 1) % 2
	else:
		f = n % 2
	if n < 3 or f:
		print(ans[f])
	else:
		x = n
		while not x % 2:
			x //= 2
		z = x
		c = 0
		k = 3
		while not c:
			if k * k > z:
				break
			while not z % k:
				z //= k
				c += 1
			k += 2
		if c or (2 * x < n and x > 1):
			f = 1
		print(ans[f])


ll = lambda : list(map(int, input().split()))
st = lambda : input()
v = lambda : map(int, input().split())
ii = lambda : int(input())
from collections import *
from math import *

def isprime(n):
	if n < 2 or (n % 2 == 0 and n != 2):
		return False
	root = int(sqrt(n))
	for i in range(3, root + 1, 2):
		if n % i == 0:
			return False
	return True
for _ in range(ii()):
	n = ii()
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2:
		print('Ashishgup')
	elif isprime(n // 2):
		print('FastestFinger')
	elif ceil(log2(n)) == floor(log2(n)):
		print('FastestFinger')
	else:
		print('Ashishgup')


import math

def prime(n):
	for i in range(2, int(math.sqrt(n)) + 1):
		if n % i == 0:
			return 1
	return 0
for _ in range(int(input())):
	n = int(input())
	if n == 2:
		print('Ashishgup')
	elif n == 1 or n & n - 1 == 0 or (n % 2 == 0 and prime(n // 2) == 0):
		print('FastestFinger')
	else:
		print('Ashishgup')


for t in range(int(input())):
	n = int(input())
	N = n
	if n == 1:
		winner = 2
	elif n == 2 or n % 2 != 0:
		winner = 1
	else:
		numTwo = 0
		while n % 2 == 0:
			n //= 2
			numTwo += 1
		numOdd = 0
		for i in range(3, int(N ** 0.5 + 2), 2):
			while n > 0 and n % i == 0:
				n //= i
				numOdd += 1
		if n > 2:
			numOdd += 1
		if numOdd == 0 and numTwo > 1:
			winner = 2
		elif numOdd == 1 and numTwo == 1:
			winner = 2
		else:
			winner = 1
	if winner == 1:
		print('Ashishgup')
	else:
		print('FastestFinger')


import sys
import heapq

def main():
	tempList = [True] * (10 ** 5 + 1)
	tempList[0] = False
	tempList[1] = False
	for i in range(10 ** 5 + 1):
		if tempList[i]:
			cnt = i * 2
			while cnt < 10 ** 5 + 1:
				tempList[cnt] = False
				cnt += i
	prime = []
	for i in range(10 ** 5 + 1):
		if tempList[i]:
			prime.append(i)
	t = int(input())
	for _ in range(t):
		n = int(input())
		if n == 2:
			print('Ashishgup')
			continue
		if n == 1:
			print('FastestFinger')
			continue
		if n % 2:
			print('Ashishgup')
			continue
		twoCnt = 0
		oddCnt = 0
		tempN = n
		for p in prime:
			if tempN < p:
				break
			while tempN % p == 0:
				tempN = tempN // p
				if p == 2:
					twoCnt += 1
				else:
					oddCnt += 1
		if tempN != 1:
			oddCnt += 1
		if oddCnt == 0:
			print('FastestFinger')
			continue
		elif twoCnt == 1:
			if oddCnt == 1:
				print('FastestFinger')
				continue
			else:
				print('Ashishgup')
				continue
		else:
			print('Ashishgup')
			continue
	return
main()


p2 = [1]
for i in range(40):
	p2.append(2 * p2[-1])

def prime(p):
	for i in range(3, min(4 * 10 ** 4, p), 2):
		if p % i == 0:
			return False
	return True
fst = 'Ashishgup'
sed = 'FastestFinger'
T = int(input())
for _ in range(T):
	n = int(input())
	if n == 1:
		print(sed)
	elif n == 2:
		print(fst)
	elif n in p2:
		print(sed)
	elif n % 4 != 2:
		print(fst)
	else:
		testp = n // 2
		if prime(testp):
			print(sed)
		else:
			print(fst)


from functools import reduce
import sys
import io, os
input = io.BytesIO(os.read(0, os.fstat(0).st_size)).readline

def factors(n):
	x = set(reduce(list.__add__, ([i, n // i] for i in range(1, int(n ** 0.5) + 1) if n % i == 0)))
	return list(x)
l1 = []
for i in range(1, 30):
	l1.append(1 << i)
t = int(input())
for i in range(t):
	n = int(input())
	if n == 2:
		sys.stdout.write('Ashishgup' + '\n')
	elif n == 1:
		sys.stdout.write('FastestFinger' + '\n')
	elif n & 1:
		sys.stdout.write('Ashishgup' + '\n')
	elif n in l1:
		sys.stdout.write('FastestFinger' + '\n')
	else:
		(ok1, ok2, ok3) = (False, False, False)
		l = factors(n)
		odd = 0
		for i in l:
			if i % 2 == 1 and i != 1:
				if n // i in l1:
					if n // i != 2:
						ok1 = True
					else:
						ok3 = True
				else:
					ok2 = True
		if ok1 == True or ok2 == True:
			sys.stdout.write('Ashishgup' + '\n')
		elif ok3 == True:
			sys.stdout.write('FastestFinger' + '\n')


from math import sqrt, floor

def is_pow(x):
	return 1 == sum((x & 1 << i != 0 for i in range(1, 33)))

def ok(x):
	s = 0
	while x % 2 == 0:
		s += 1
		x //= 2
	return s

def odd_1(a):
	while a % 2 == 0:
		a //= 2
	for i in range(2, floor(sqrt(a)) + 1):
		if a % i == 0:
			return 0
	return 1
for _ in ' ' * int(input()):
	a = int(input())
	if a == 1:
		print('FastestFinger')
	elif a & 1:
		print('Ashishgup')
	elif a == 2:
		print('Ashishgup')
	elif is_pow(a):
		print('FastestFinger')
	elif ok(a) == 1 and odd_1(a):
		print('FastestFinger')
	else:
		print('Ashishgup')


def primo(k):
	if k == 1:
		return False
	i = 3
	while i * i <= k:
		if k % i == 0:
			return False
		i += 1
	return True
t = int(input())
for test in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 or n == 2:
		print('Ashishgup')
	elif n // 2 % 2 and primo(n // 2):
		print('FastestFinger')
	else:
		while n % 2 == 0:
			n = n // 2
		if n == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')


import sys
sys.setrecursionlimit(10000)
t = int(input())
for _ in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 != 0:
		print('Ashishgup')
	else:
		odd_divs = []
		even_div = []
		even_divs = 0
		for i in range(2, int(n ** 0.5) + 2):
			if n % i == 0:
				if i % 2 != 0:
					odd_divs.append(i)
				else:
					even_div.append(i)
					if i // 2 % 2 == 0:
						even_divs += 1
		new_odd = odd_divs.copy()
		for i in odd_divs + even_div:
			if n // i % 2 != 0:
				new_odd.append(n // i)
			elif n // i // 2 % 2 == 0:
				even_divs += 1
		new_odd = list(dict.fromkeys(new_odd))
		if len(new_odd) > 0:
			if len(new_odd) > 1:
				print('Ashishgup')
			else:
				yes = 0
				for i in new_odd:
					if n // i % i == 0:
						yes = 1
				if yes == 1 or even_divs > 0:
					print('Ashishgup')
				else:
					print('FastestFinger')
		else:
			print('FastestFinger')


import os
import sys
from io import BytesIO, IOBase
BUFSIZE = 8192

class FastIO(IOBase):
	newlines = 0

	def __init__(self, file):
		self._fd = file.fileno()
		self.buffer = BytesIO()
		self.writable = 'x' in file.mode or 'r' not in file.mode
		self.write = self.buffer.write if self.writable else None

	def read(self):
		while True:
			b = os.read(self._fd, max(os.fstat(self._fd).st_size, BUFSIZE))
			if not b:
				break
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines = 0
		return self.buffer.read()

	def readline(self):
		while self.newlines == 0:
			b = os.read(self._fd, max(os.fstat(self._fd).st_size, BUFSIZE))
			self.newlines = b.count(b'\n') + (not b)
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines -= 1
		return self.buffer.readline()

	def flush(self):
		if self.writable:
			os.write(self._fd, self.buffer.getvalue())
			(self.buffer.truncate(0), self.buffer.seek(0))

class IOWrapper(IOBase):

	def __init__(self, file):
		self.buffer = FastIO(file)
		self.flush = self.buffer.flush
		self.writable = self.buffer.writable
		self.write = lambda s: self.buffer.write(s.encode('ascii'))
		self.read = lambda : self.buffer.read().decode('ascii')
		self.readline = lambda : self.buffer.readline().decode('ascii')
(sys.stdin, sys.stdout) = (IOWrapper(sys.stdin), IOWrapper(sys.stdout))
input = lambda : sys.stdin.readline().rstrip('\r\n')
import math
import bisect
testcases = int(input())
primes = [3]
for j in range(5, math.ceil(math.sqrt(10 ** 9)) + 1):
	indy = min(bisect.bisect_left(primes, math.ceil(math.sqrt(j))), len(primes) - 1)
	broke = False
	for s in range(indy + 1):
		if j % primes[s] == 0:
			broke = True
			break
	if broke == False:
		primes.append(j)
for j in range(testcases):
	n = int(input())
	if n % 2 == 1:
		if n == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')
	elif n % 2 == 0:
		if n == 2:
			print('Ashishgup')
		else:
			largestodd = n
			while largestodd % 2 == 0:
				largestodd = largestodd // 2
			if largestodd == 1:
				print('FastestFinger')
			elif n // largestodd == 2:
				ind = bisect.bisect_left(primes, math.ceil(math.sqrt(largestodd)))
				facs = []
				for s in range(ind + 1):
					if largestodd % primes[s] == 0:
						facs.append(primes[s])
						if largestodd // primes[s] != 1:
							facs.append(largestodd // primes[s])
				if len(facs) >= 2:
					print('Ashishgup')
				else:
					print('FastestFinger')
			else:
				print('Ashishgup')


import math

def isPrimes2(n):
	if n > 1:
		if n == 2:
			return True
		if n % 2 == 0:
			return False
		for x in range(3, int(math.sqrt(n) + 1), 2):
			if n % x == 0:
				return False
		return True
	return False

def isok(n):
	while n != 1:
		if n % 2 == 1:
			return False
		n /= 2
	return True

def main():
	t = int(input())
	for i in range(t):
		n = int(input())
		if n == 1:
			print('FastestFinger')
		elif n == 2:
			print('Ashishgup')
		elif n % 2 == 1:
			print('Ashishgup')
		else:
			k = n / 2
			if isok(k) or (k % 2 == 1 and isPrimes2(k)):
				print('FastestFinger')
			else:
				print('Ashishgup')
main()


from copy import *
from math import *

def printDivisors(n):
	l = []
	i = 1
	while i <= sqrt(n):
		if n % i == 0:
			if n / i == i:
				l.append(i)
			else:
				l.extend([i, n // i])
		i = i + 1
	return l
t = int(input())
for i in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	if n % 2 == 1 or n == 2:
		print('Ashishgup')
		continue
	if n == 4 or n == 6:
		print('FastestFinger')
		continue
	kk = printDivisors(n)
	kk.sort()
	kk = deepcopy(kk[1:])
	kk = sorted(kk, reverse=True)
	val = False
	for j in range(len(kk)):
		if kk[j] % 2 == 1:
			FET = n // kk[j]
			if FET != 2:
				val = True
				break
	if val == False:
		print('FastestFinger')
	else:
		print('Ashishgup')


from sys import stdin

def isPrime(n):
	for i in range(2, int(n ** 0.5 + 1)):
		if n % i == 0:
			return False
	return True
t = int(stdin.readline().strip())
for _ in range(t):
	n = int(stdin.readline().strip())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 == 1:
		print('Ashishgup')
	elif n & n - 1 == 0:
		print('FastestFinger')
	elif n / 2 % 2 == 1 and isPrime(n / 2):
		print('FastestFinger')
	else:
		print('Ashishgup')


def check_prime(n):
	for i in range(2, int(n ** 0.5) + 1):
		if n % i == 0:
			return 0
	return 1

def numGame(n):
	player1 = 'Ashishgup'
	player2 = 'FastestFinger'
	if n == 1:
		return player2
	elif n > 2 and n % 2 == 0:
		if n & n - 1 == 0:
			return player2
		elif n % 4 != 0 and check_prime(n // 2):
			return player2
	return player1
for t in range(int(input())):
	n = int(input())
	print(numGame(n))


import math

def p(n):
	j = []
	i = 1
	while i <= math.sqrt(n):
		if n % i == 0:
			if n / i == i:
				if i % 2 != 0 and i > 1:
					j.append(i)
			else:
				if i % 2 != 0 and i > 1:
					j.append(i)
				if n / i % 2 != 0 and i > 1:
					j.append(n / i)
		i = i + 1
	return j
a = int(input())
for x in range(a):
	b = int(input())
	c = 'Ashishgup'
	if b == 1:
		print('FastestFinger')
	elif b == 2:
		print(c)
	elif b % 2 != 0:
		print(c)
	else:
		j = p(b)
		t = len(j)
		if t == 0:
			print('FastestFinger')
		elif b // j[t - 1] % 2 != 0 or b // j[t - 1] == 2:
			print('FastestFinger')
		else:
			print(c)


from math import log2, sqrt

def isPrime(x):
	if x == 1:
		return False
	if x in [2, 3, 5]:
		return True
	for i in range(2, int(sqrt(x)) + 1):
		if x % i == 0:
			return False
	return True

def solve(n):
	if n == 2:
		return 'Ashishgup'
	if n == 1 or int(log2(n)) == log2(n) or (n % 2 == 0 and isPrime(n // 2)):
		return 'FastestFinger'
	return 'Ashishgup'
for _ in range(int(input())):
	n = int(input())
	print(solve(n))


import math
import math
a = []
x = 2
while x < 10 ** 9:
	x *= 2
	a.append(x)

def prime(n):
	for i in range(2, int(math.sqrt(n)) + 1):
		if n % i == 0:
			return False
	return True
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 == 1:
		print('Ashishgup')
	elif n in a:
		print('FastestFinger')
	elif n % 4 == 0:
		print('Ashishgup')
	elif n % 2 == 0:
		if prime(n // 2):
			print('FastestFinger')
		else:
			print('Ashishgup')


p = 1
powers = []
while True:
	if 2 ** p <= 10 ** 9:
		powers.append(2 ** p)
	else:
		break
	p += 1
for _ in range(int(input())):
	n = int(input())
	f = 0
	if n == 1:
		f = 0
	elif n == 2:
		f = 1
	elif n % 2 != 0:
		f = 1
	elif n > 2:
		p = n ** 0.5
		p = int(p) + 1
		for i in range(2, p):
			if n % i == 0:
				if n // i == i:
					if i % 2 != 0 and i * 2 != n:
						f = 1
						break
				else:
					if i % 2 != 0 and i * 2 != n:
						f = 1
						break
					temp = n // i
					if temp % 2 != 0 and temp * 2 != n:
						f = 1
						break
	if f == 1:
		print('Ashishgup')
	else:
		print('FastestFinger')


import math
import sys
input = sys.stdin.readline
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	if n == 2:
		print('Ashishgup')
		continue
	if n % 2 == 1:
		print('Ashishgup')
	else:
		q = n // 2
		ok = True
		if q % 2 == 1:
			ok = False
		k = 0
		i = 2
		while n > 1:
			if i * i > n:
				if n % 2 == 1:
					k += 1
				n = 1
			if n % i == 0:
				n //= i
				if i % 2 == 1:
					k += 1
			else:
				i += 1
		if ok:
			if k > 0:
				print('Ashishgup')
			else:
				print('FastestFinger')
		elif k > 1:
			print('Ashishgup')
		else:
			print('FastestFinger')


from collections import Counter
for __ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 != 0:
		print('Ashishgup')
	elif n == 2:
		print('Ashishgup')
	elif n & n - 1 == 0:
		print('FastestFinger')
	elif n % 4 == 0:
		print('Ashishgup')
	else:
		d = []
		i = 2
		while i * i <= n:
			while n % i == 0:
				d.append(i)
				n = n // i
			i += 1
		if n != 1:
			d.append(n)
		total_divisors = Counter(d)
		odd_divisors = 1
		for key in total_divisors.keys():
			if key % 2 != 0:
				odd_divisors *= total_divisors[key] + 1
		odd_divisors -= 1
		if odd_divisors > 1:
			print('Ashishgup')
		else:
			print('FastestFinger')


import math

def check_prime(x):
	if x == 1:
		return 1
	root = int(math.sqrt(x))
	if x % 2 == 0:
		return 0
	for i in range(3, root + 1):
		if x % i == 0:
			return 0
	return 1

def check_int(x):
	return math.floor(x) == x
T = int(input())
for t in range(T):
	n = int(input())
	count = 0
	if n % 2 == 1:
		if n == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')
	elif n == 2:
		print('Ashishgup')
	else:
		while n % 2 == 0:
			n //= 2
			count += 1
		if count != 1:
			if n == 1:
				print('FastestFinger')
			else:
				print('Ashishgup')
		elif not check_prime(n):
			print('Ashishgup')
		else:
			print('FastestFinger')


for _ in range(int(input())):
	n = int(input())
	if n % 2 == 1 and n != 1 or n == 2:
		print('Ashishgup')
		continue
	cnt = 0
	while n % 2 == 0:
		n /= 2
		cnt += 1
	if n == 1:
		print('FastestFinger')
		continue
	prime = True
	i = 2
	while i * i <= n:
		if n % i == 0:
			prime = False
			break
		i += 1
	if cnt != 1 or not prime:
		print('Ashishgup')
		continue
	print('FastestFinger')


def f(n):
	c = 0
	if n == 2:
		return
	while n % 2 != 1:
		c += 1
		n = n // 2
	if n == 1:
		return 'n'
	else:
		return c

def g(n):
	i = 1
	c = 0
	p = n ** 0.5
	while i <= p:
		if n % i == 0:
			if n / i == i:
				c += 0
			elif i % 2 == 1:
				c += 1
			elif n // i % 2 == 1:
				c += 1
		i = i + 1
	return c
t = int(input())
for _ in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 == 1:
		print('Ashishgup')
	elif n == 2:
		print('Ashishgup')
	else:
		c = f(n)
		d = g(n)
		if c == 'n':
			print('FastestFinger')
		elif c == 1:
			if d > 2:
				print('Ashishgup')
			else:
				print('FastestFinger')
		else:
			print('Ashishgup')


A = 'Ashishgup'
F = 'FastestFinger'

def f(n):
	for i in range(3, int(n ** 0.5) + 1):
		if n % i == 0:
			if i % 2 == 1 or n // i % 2 == 1:
				return A
	return F
t = int(input())
for T in range(t):
	n = int(input())
	if n == 1:
		print(F)
	elif n == 2 or n % 2 == 1:
		print(A)
	else:
		print(f(n))


from bisect import bisect_left as bl
from bisect import bisect_right as br
from heapq import heappush, heappop
import math
from collections import *
from functools import reduce, cmp_to_key
import sys
input = sys.stdin.readline
M = mod = 998244353

def factors(n):
	return sorted(set(reduce(list.__add__, ([i, n // i] for i in range(1, int(n ** 0.5) + 1) if n % i == 0))))

def inv_mod(n):
	return pow(n, mod - 2, mod)

def li():
	return [int(i) for i in input().rstrip('\n').split()]

def st():
	return input().rstrip('\n')

def val():
	return int(input().rstrip('\n'))

def li2():
	return [i for i in input().rstrip('\n')]

def li3():
	return [int(i) for i in input().rstrip('\n')]

def prime(n):
	l = []
	for i in range(2, int(math.sqrt(n)) + 1):
		while n % i == 0:
			l.append(i)
			n //= i
	if n - 1:
		l.append(n)
	return l
for _ in range(val()):
	n = val()
	if n == 1:
		print('FastestFinger')
		continue
	if n & 1:
		print('Ashishgup')
	else:
		l = prime(n)
		noodd = 0
		for i in l:
			if i & 1:
				noodd += 1
		if noodd == 0 and len(l) > 1 or (noodd == 1 and len(l) == 2):
			print('FastestFinger')
		else:
			print('Ashishgup')


import math
t = int(input())
for q in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 == 1:
		print('Ashishgup')
	else:
		li = []
		for i in range(2, math.ceil(math.sqrt(n)) + 1):
			if n % i == 0:
				li.append(i)
				li.append(n // i)
		c = 0
		k = n
		li.sort()
		for i in range(len(li)):
			if li[i] % 2 == 1:
				while k % li[i] == 0:
					c += 1
					k //= li[i]
		if n % 4 != 0:
			if c > 1:
				print('Ashishgup')
			else:
				print('FastestFinger')
		elif c != 0:
			print('Ashishgup')
		else:
			print('FastestFinger')


def check(a):
	c = 2
	g = True
	while c ** 2 <= a:
		if a % c == 0:
			g = False
			break
		c = c + 1
	return g

def f(s):
	answer = 0
	ind = len(s) - 1
	while s[ind] == '0':
		ind -= 1
		answer += 1
	return answer
q = int(input())
for i in range(q):
	n = int(input())
	b = bin(n)[2:]
	k = f(b)
	x = n // 2 ** k
	answer = True
	if x == 1 and k != 1:
		answer = False
	elif k == 1 and x != 1 and check(x):
		answer = False
	if answer:
		print('Ashishgup')
	else:
		print('FastestFinger')


import io, os
input = io.BytesIO(os.read(0, os.fstat(0).st_size)).readline
I = lambda : list(map(int, input().split()))
(t,) = I()
for _ in range(t):
	f = 0
	(n,) = I()
	if n % 2:
		f = 1 if n != 1 else 0
	else:
		d = 0
		r = int(n ** 0.5) + 1
		c = 0
		while n % 2 == 0:
			n //= 2
			c += 1
		for i in range(3, r, 2):
			while n % i == 0 and i % 2:
				n //= i
				d += 1
		d = d + 1 if n != 1 else d
		if c != 1:
			if d != 0:
				f = 1
		elif d == 0 or d > 1:
			f = 1
	if f:
		print('Ashishgup')
	else:
		print('FastestFinger')


from math import sqrt
from itertools import count, islice

def is_prime(n):
	if n < 2:
		return False
	for number in islice(count(2), int(sqrt(n) - 1)):
		if n % number == 0:
			return False
	return True

def solve():
	n = int(input())
	if n & 1:
		if n != 1:
			print('Ashishgup')
		else:
			print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif bin(n)[2:].count('1') == 1:
		print('FastestFinger')
	elif n % 2 == 0 and n // 2 % 2 != 0:
		if not is_prime(n // 2):
			print('Ashishgup')
		else:
			print('FastestFinger')
	else:
		print('Ashishgup')
t = 1
t = int(input())
for _ in range(t):
	solve()


import sys
import random
strInp = lambda : input().strip().split()
intInp = lambda : list(map(int, strInp()))
N = 50000

def isPrime(n):
	isPrime = True
	for i in range(2, min(n, N)):
		if n % i == 0:
			isPrime = False
			break
	return isPrime
for t in range(int(input())):
	n = int(input())
	looseA = False
	if n == 1:
		looseA = True
	if n % 2 == 0 and n > 2:
		if n & n - 1 == 0:
			looseA = True
		elif not n % 4 == 0 and isPrime(n // 2):
			looseA = True
	if looseA:
		print('FastestFinger')
	else:
		print('Ashishgup')


import math
for x in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2:
		print('Ashishgup')
	else:
		q = n
		a = []
		a.append(n)
		for i in range(2, int(math.sqrt(n)) + 1):
			if math.ceil(q / i) - int(q / i) == 0:
				if i % 2:
					a.append(q // i)
				elif q // i % 2:
					a.append(i)
		n = min(a)
		if n == 2 and len(a) == 2:
			print('FastestFinger')
		elif len(a) == 1 and n != 2:
			print('FastestFinger')
		else:
			print('Ashishgup')


import math

def fun(n):
	if n == 1:
		return 0
	for i in range(2, int(math.sqrt(n)) + 2):
		if n % i == 0:
			return 0
	return 1
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	elif n % 2 == 0:
		k = n // 2
		if fun(k) == 1:
			print('FastestFinger')
			continue
		temp = int(math.log(n, 2))
		if temp > 1 and temp == math.log(n, 2):
			print('FastestFinger')
			continue
	print('Ashishgup')


from sys import stdin, stdout
from bisect import bisect, bisect_left, bisect_right

def gt():
	return map(int, stdin.readline().split())

def gi():
	return int(stdin.readline())

def gl():
	return list(map(int, stdin.readline().split()))

def gs():
	return stdin.readline()
t = gi()
for _ in range(t):
	n = gi()
	tn = n
	count = 0
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 != 0:
		print('Ashishgup')
	else:
		tc = 0
		while n % 2 == 0:
			n = n // 2
			tc += 1
		count = 0
		i = 3
		while i * i <= n:
			while n % i == 0:
				n = n // i
				count += 1
			i += 1
		if n > 1:
			count += 1
		if count > 1:
			print('Ashishgup')
		elif count == 0:
			if tc == 1:
				print('Ashishgup')
			else:
				print('FastestFinger')
		elif tc == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')


for _ in range(int(input())):
	n = int(input())
	winner = 1
	if n == 1:
		print('FastestFinger')
		continue
	while n >= 1:
		if n == 1:
			winner = winner % 2 + 1
			break
		if n % 2 != 0 or n == 2:
			break
		div = 2
		alt_div = 3
		found = False
		alt_found = False
		while div * div <= n:
			if n % div == 0 and n // (n // div) % 2 == 0 and (n // div % 2 != 0) and (n // (n // div) != 2):
				found = True
				div = n // div
				break
			elif n % div == 0 and n // div % 2 == 0 and (div % 2 != 0):
				alt_div = div
				alt_found = True
			div += 1
		if found:
			n //= div
		elif alt_found:
			n //= alt_div
		else:
			n -= 1
		winner = winner % 2 + 1
	if winner == 1:
		print('Ashishgup')
	else:
		print('FastestFinger')


from sys import stdin, stdout
from sys import maxsize

def prime(n):
	i = 2
	while i ** 2 <= n:
		if n % i == 0:
			break
		i += 1
	if n % i == 0:
		return False
	return True

def po2(n):
	i = 1
	while i <= n:
		i *= 2
	i = i // 2
	if i == n:
		return True
	return False
test = 1
test = int(input())
for t in range(0, test):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 == 1:
		print('Ashishgup')
	elif n % 2 == 0 and n % 4 != 0:
		n = n // 2
		if prime(n):
			print('FastestFinger')
		else:
			print('Ashishgup')
	elif po2(n):
		print('FastestFinger')
	else:
		print('Ashishgup')


for i in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 == 1:
		print('Ashishgup')
	else:
		p = 3
		ch = 0
		numb = 1
		while n % 2 == 0:
			numb *= 2
			n //= 2
		while p <= n ** 0.5:
			while n % p == 0:
				ch += 1
				n //= p
			p += 2
		if n != 1:
			ch += 1
		if ch == 0:
			print('FastestFinger')
		elif numb == 2 and ch == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')


import sys
import math
import collections
import operator as op
from collections import deque
from math import gcd
from functools import reduce
from sys import stdin, stdout, setrecursionlimit
setrecursionlimit(2 ** 20)

def factorial(n):
	if n == 0:
		return 1
	return n * factorial(n - 1)

def ncr(n, r):
	r = min(r, n - r)
	numer = reduce(op.mul, range(n, n - r, -1), 1)
	denom = reduce(op.mul, range(1, r + 1), 1)
	return numer // denom

def prime_factors(n):
	i = 2
	factors = []
	while i * i <= n:
		if n % i:
			i += 1
		else:
			n //= i
			factors.append(i)
	if n > 1:
		factors.append(n)
	return factors

def isPowerOfTwo(x):
	return x and (not x & x - 1)

def factors(n):
	return list(set(reduce(list.__add__, ([i, n // i] for i in range(1, int(n ** 0.5) + 1) if n % i == 0))))

def prime_factors(n):
	l = []
	num = 0
	while n % 2 == 0:
		l.append(2)
		num += 1
		n = n // 2
	for i in range(3, int(math.sqrt(n)) + 1, 2):
		while n % i == 0:
			l.append(i)
			n = n // i
	if n > 2:
		l.append(n)
	return (l, num)
T = 1
T = int(stdin.readline())
for _ in range(T):
	n = int(stdin.readline())
	res = ''
	if n == 1:
		res = 'FastestFinger'
	elif n == 2 or n % 2 == 1:
		res = 'Ashishgup'
	else:
		(lp, two) = prime_factors(n)
		if 2 ** two == n:
			res = 'FastestFinger'
		elif two == 1 and len(lp) == 2:
			res = 'FastestFinger'
		else:
			res = 'Ashishgup'
	print(res)


primes = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131, 137, 139, 149, 151, 157, 163, 167, 173, 179, 181, 191, 193, 197, 199, 211, 223, 227, 229, 233, 239, 241, 251, 257, 263, 269, 271, 277, 281, 283, 293, 307, 311, 313, 317, 331, 337, 347, 349, 353, 359, 367, 373, 379, 383, 389, 397, 401, 409, 419, 421, 431, 433, 439, 443, 449, 457, 461, 463, 467, 479, 487, 491, 499, 503, 509, 521, 523, 541, 547, 557, 563, 569, 571, 577, 587, 593, 599, 601, 607, 613, 617, 619, 631, 641, 643, 647, 653, 659, 661, 673, 677, 683, 691, 701, 709, 719, 727, 733, 739, 743, 751, 757, 761, 769, 773, 787, 797, 809, 811, 821, 823, 827, 829, 839, 853, 857, 859, 863, 877, 881, 883, 887, 907, 911, 919, 929, 937, 941, 947, 953, 967, 971, 977, 983, 991, 997, 1009, 1013, 1019, 1021, 1031, 1033, 1039, 1049, 1051, 1061, 1063, 1069, 1087, 1091, 1093, 1097, 1103, 1109, 1117, 1123, 1129, 1151, 1153, 1163, 1171, 1181, 1187, 1193, 1201, 1213, 1217, 1223, 1229, 1231, 1237, 1249, 1259, 1277, 1279, 1283, 1289, 1291, 1297, 1301, 1303, 1307, 1319, 1321, 1327, 1361, 1367, 1373, 1381, 1399, 1409, 1423, 1427, 1429, 1433, 1439, 1447, 1451, 1453, 1459, 1471, 1481, 1483, 1487, 1489, 1493, 1499, 1511, 1523, 1531, 1543, 1549, 1553, 1559, 1567, 1571, 1579, 1583, 1597, 1601, 1607, 1609, 1613, 1619, 1621, 1627, 1637, 1657, 1663, 1667, 1669, 1693, 1697, 1699, 1709, 1721, 1723, 1733, 1741, 1747, 1753, 1759, 1777, 1783, 1787, 1789, 1801, 1811, 1823, 1831, 1847, 1861, 1867, 1871, 1873, 1877, 1879, 1889, 1901, 1907, 1913, 1931, 1933, 1949, 1951, 1973, 1979, 1987, 1993, 1997, 1999, 2003, 2011, 2017, 2027, 2029, 2039, 2053, 2063, 2069, 2081, 2083, 2087, 2089, 2099, 2111, 2113, 2129, 2131, 2137, 2141, 2143, 2153, 2161, 2179, 2203, 2207, 2213, 2221, 2237, 2239, 2243, 2251, 2267, 2269, 2273, 2281, 2287, 2293, 2297, 2309, 2311, 2333, 2339, 2341, 2347, 2351, 2357, 2371, 2377, 2381, 2383, 2389, 2393, 2399, 2411, 2417, 2423, 2437, 2441, 2447, 2459, 2467, 2473, 2477, 2503, 2521, 2531, 2539, 2543, 2549, 2551, 2557, 2579, 2591, 2593, 2609, 2617, 2621, 2633, 2647, 2657, 2659, 2663, 2671, 2677, 2683, 2687, 2689, 2693, 2699, 2707, 2711, 2713, 2719, 2729, 2731, 2741, 2749, 2753, 2767, 2777, 2789, 2791, 2797, 2801, 2803, 2819, 2833, 2837, 2843, 2851, 2857, 2861, 2879, 2887, 2897, 2903, 2909, 2917, 2927, 2939, 2953, 2957, 2963, 2969, 2971, 2999, 3001, 3011, 3019, 3023, 3037, 3041, 3049, 3061, 3067, 3079, 3083, 3089, 3109, 3119, 3121, 3137, 3163, 3167, 3169, 3181, 3187, 3191, 3203, 3209, 3217, 3221, 3229, 3251, 3253, 3257, 3259, 3271, 3299, 3301, 3307, 3313, 3319, 3323, 3329, 3331, 3343, 3347, 3359, 3361, 3371, 3373, 3389, 3391, 3407, 3413, 3433, 3449, 3457, 3461, 3463, 3467, 3469, 3491, 3499, 3511, 3517, 3527, 3529, 3533, 3539, 3541, 3547, 3557, 3559, 3571, 3581, 3583, 3593, 3607, 3613, 3617, 3623, 3631, 3637, 3643, 3659, 3671, 3673, 3677, 3691, 3697, 3701, 3709, 3719, 3727, 3733, 3739, 3761, 3767, 3769, 3779, 3793, 3797, 3803, 3821, 3823, 3833, 3847, 3851, 3853, 3863, 3877, 3881, 3889, 3907, 3911, 3917, 3919, 3923, 3929, 3931, 3943, 3947, 3967, 3989, 4001, 4003, 4007, 4013, 4019, 4021, 4027, 4049, 4051, 4057, 4073, 4079, 4091, 4093, 4099, 4111, 4127, 4129, 4133, 4139, 4153, 4157, 4159, 4177, 4201, 4211, 4217, 4219, 4229, 4231, 4241, 4243, 4253, 4259, 4261, 4271, 4273, 4283, 4289, 4297, 4327, 4337, 4339, 4349, 4357, 4363, 4373, 4391, 4397, 4409, 4421, 4423, 4441, 4447, 4451, 4457, 4463, 4481, 4483, 4493, 4507, 4513, 4517, 4519, 4523, 4547, 4549, 4561, 4567, 4583, 4591, 4597, 4603, 4621, 4637, 4639, 4643, 4649, 4651, 4657, 4663, 4673, 4679, 4691, 4703, 4721, 4723, 4729, 4733, 4751, 4759, 4783, 4787, 4789, 4793, 4799, 4801, 4813, 4817, 4831, 4861, 4871, 4877, 4889, 4903, 4909, 4919, 4931, 4933, 4937, 4943, 4951, 4957, 4967, 4969, 4973, 4987, 4993, 4999, 5003, 5009, 5011, 5021, 5023, 5039, 5051, 5059, 5077, 5081, 5087, 5099, 5101, 5107, 5113, 5119, 5147, 5153, 5167, 5171, 5179, 5189, 5197, 5209, 5227, 5231, 5233, 5237, 5261, 5273, 5279, 5281, 5297, 5303, 5309, 5323, 5333, 5347, 5351, 5381, 5387, 5393, 5399, 5407, 5413, 5417, 5419, 5431, 5437, 5441, 5443, 5449, 5471, 5477, 5479, 5483, 5501, 5503, 5507, 5519, 5521, 5527, 5531, 5557, 5563, 5569, 5573, 5581, 5591, 5623, 5639, 5641, 5647, 5651, 5653, 5657, 5659, 5669, 5683, 5689, 5693, 5701, 5711, 5717, 5737, 5741, 5743, 5749, 5779, 5783, 5791, 5801, 5807, 5813, 5821, 5827, 5839, 5843, 5849, 5851, 5857, 5861, 5867, 5869, 5879, 5881, 5897, 5903, 5923, 5927, 5939, 5953, 5981, 5987, 6007, 6011, 6029, 6037, 6043, 6047, 6053, 6067, 6073, 6079, 6089, 6091, 6101, 6113, 6121, 6131, 6133, 6143, 6151, 6163, 6173, 6197, 6199, 6203, 6211, 6217, 6221, 6229, 6247, 6257, 6263, 6269, 6271, 6277, 6287, 6299, 6301, 6311, 6317, 6323, 6329, 6337, 6343, 6353, 6359, 6361, 6367, 6373, 6379, 6389, 6397, 6421, 6427, 6449, 6451, 6469, 6473, 6481, 6491, 6521, 6529, 6547, 6551, 6553, 6563, 6569, 6571, 6577, 6581, 6599, 6607, 6619, 6637, 6653, 6659, 6661, 6673, 6679, 6689, 6691, 6701, 6703, 6709, 6719, 6733, 6737, 6761, 6763, 6779, 6781, 6791, 6793, 6803, 6823, 6827, 6829, 6833, 6841, 6857, 6863, 6869, 6871, 6883, 6899, 6907, 6911, 6917, 6947, 6949, 6959, 6961, 6967, 6971, 6977, 6983, 6991, 6997, 7001, 7013, 7019, 7027, 7039, 7043, 7057, 7069, 7079, 7103, 7109, 7121, 7127, 7129, 7151, 7159, 7177, 7187, 7193, 7207, 7211, 7213, 7219, 7229, 7237, 7243, 7247, 7253, 7283, 7297, 7307, 7309, 7321, 7331, 7333, 7349, 7351, 7369, 7393, 7411, 7417, 7433, 7451, 7457, 7459, 7477, 7481, 7487, 7489, 7499, 7507, 7517, 7523, 7529, 7537, 7541, 7547, 7549, 7559, 7561, 7573, 7577, 7583, 7589, 7591, 7603, 7607, 7621, 7639, 7643, 7649, 7669, 7673, 7681, 7687, 7691, 7699, 7703, 7717, 7723, 7727, 7741, 7753, 7757, 7759, 7789, 7793, 7817, 7823, 7829, 7841, 7853, 7867, 7873, 7877, 7879, 7883, 7901, 7907, 7919, 7927, 7933, 7937, 7949, 7951, 7963, 7993, 8009, 8011, 8017, 8039, 8053, 8059, 8069, 8081, 8087, 8089, 8093, 8101, 8111, 8117, 8123, 8147, 8161, 8167, 8171, 8179, 8191, 8209, 8219, 8221, 8231, 8233, 8237, 8243, 8263, 8269, 8273, 8287, 8291, 8293, 8297, 8311, 8317, 8329, 8353, 8363, 8369, 8377, 8387, 8389, 8419, 8423, 8429, 8431, 8443, 8447, 8461, 8467, 8501, 8513, 8521, 8527, 8537, 8539, 8543, 8563, 8573, 8581, 8597, 8599, 8609, 8623, 8627, 8629, 8641, 8647, 8663, 8669, 8677, 8681, 8689, 8693, 8699, 8707, 8713, 8719, 8731, 8737, 8741, 8747, 8753, 8761, 8779, 8783, 8803, 8807, 8819, 8821, 8831, 8837, 8839, 8849, 8861, 8863, 8867, 8887, 8893, 8923, 8929, 8933, 8941, 8951, 8963, 8969, 8971, 8999, 9001, 9007, 9011, 9013, 9029, 9041, 9043, 9049, 9059, 9067, 9091, 9103, 9109, 9127, 9133, 9137, 9151, 9157, 9161, 9173, 9181, 9187, 9199, 9203, 9209, 9221, 9227, 9239, 9241, 9257, 9277, 9281, 9283, 9293, 9311, 9319, 9323, 9337, 9341, 9343, 9349, 9371, 9377, 9391, 9397, 9403, 9413, 9419, 9421, 9431, 9433, 9437, 9439, 9461, 9463, 9467, 9473, 9479, 9491, 9497, 9511, 9521, 9533, 9539, 9547, 9551, 9587, 9601, 9613, 9619, 9623, 9629, 9631, 9643, 9649, 9661, 9677, 9679, 9689, 9697, 9719, 9721, 9733, 9739, 9743, 9749, 9767, 9769, 9781, 9787, 9791, 9803, 9811, 9817, 9829, 9833, 9839, 9851, 9857, 9859, 9871, 9883, 9887, 9901, 9907, 9923, 9929, 9931, 9941, 9949, 9967, 9973, 10007, 10009, 10037, 10039, 10061, 10067, 10069, 10079, 10091, 10093, 10099, 10103, 10111, 10133, 10139, 10141, 10151, 10159, 10163, 10169, 10177, 10181, 10193, 10211, 10223, 10243, 10247, 10253, 10259, 10267, 10271, 10273, 10289, 10301, 10303, 10313, 10321, 10331, 10333, 10337, 10343, 10357, 10369, 10391, 10399, 10427, 10429, 10433, 10453, 10457, 10459, 10463, 10477, 10487, 10499, 10501, 10513, 10529, 10531, 10559, 10567, 10589, 10597, 10601, 10607, 10613, 10627, 10631, 10639, 10651, 10657, 10663, 10667, 10687, 10691, 10709, 10711, 10723, 10729, 10733, 10739, 10753, 10771, 10781, 10789, 10799, 10831, 10837, 10847, 10853, 10859, 10861, 10867, 10883, 10889, 10891, 10903, 10909, 10937, 10939, 10949, 10957, 10973, 10979, 10987, 10993, 11003, 11027, 11047, 11057, 11059, 11069, 11071, 11083, 11087, 11093, 11113, 11117, 11119, 11131, 11149, 11159, 11161, 11171, 11173, 11177, 11197, 11213, 11239, 11243, 11251, 11257, 11261, 11273, 11279, 11287, 11299, 11311, 11317, 11321, 11329, 11351, 11353, 11369, 11383, 11393, 11399, 11411, 11423, 11437, 11443, 11447, 11467, 11471, 11483, 11489, 11491, 11497, 11503, 11519, 11527, 11549, 11551, 11579, 11587, 11593, 11597, 11617, 11621, 11633, 11657, 11677, 11681, 11689, 11699, 11701, 11717, 11719, 11731, 11743, 11777, 11779, 11783, 11789, 11801, 11807, 11813, 11821, 11827, 11831, 11833, 11839, 11863, 11867, 11887, 11897, 11903, 11909, 11923, 11927, 11933, 11939, 11941, 11953, 11959, 11969, 11971, 11981, 11987, 12007, 12011, 12037, 12041, 12043, 12049, 12071, 12073, 12097, 12101, 12107, 12109, 12113, 12119, 12143, 12149, 12157, 12161, 12163, 12197, 12203, 12211, 12227, 12239, 12241, 12251, 12253, 12263, 12269, 12277, 12281, 12289, 12301, 12323, 12329, 12343, 12347, 12373, 12377, 12379, 12391, 12401, 12409, 12413, 12421, 12433, 12437, 12451, 12457, 12473, 12479, 12487, 12491, 12497, 12503, 12511, 12517, 12527, 12539, 12541, 12547, 12553, 12569, 12577, 12583, 12589, 12601, 12611, 12613, 12619, 12637, 12641, 12647, 12653, 12659, 12671, 12689, 12697, 12703, 12713, 12721, 12739, 12743, 12757, 12763, 12781, 12791, 12799, 12809, 12821, 12823, 12829, 12841, 12853, 12889, 12893, 12899, 12907, 12911, 12917, 12919, 12923, 12941, 12953, 12959, 12967, 12973, 12979, 12983, 13001, 13003, 13007, 13009, 13033, 13037, 13043, 13049, 13063, 13093, 13099, 13103, 13109, 13121, 13127, 13147, 13151, 13159, 13163, 13171, 13177, 13183, 13187, 13217, 13219, 13229, 13241, 13249, 13259, 13267, 13291, 13297, 13309, 13313, 13327, 13331, 13337, 13339, 13367, 13381, 13397, 13399, 13411, 13417, 13421, 13441, 13451, 13457, 13463, 13469, 13477, 13487, 13499, 13513, 13523, 13537, 13553, 13567, 13577, 13591, 13597, 13613, 13619, 13627, 13633, 13649, 13669, 13679, 13681, 13687, 13691, 13693, 13697, 13709, 13711, 13721, 13723, 13729, 13751, 13757, 13759, 13763, 13781, 13789, 13799, 13807, 13829, 13831, 13841, 13859, 13873, 13877, 13879, 13883, 13901, 13903, 13907, 13913, 13921, 13931, 13933, 13963, 13967, 13997, 13999, 14009, 14011, 14029, 14033, 14051, 14057, 14071, 14081, 14083, 14087, 14107, 14143, 14149, 14153, 14159, 14173, 14177, 14197, 14207, 14221, 14243, 14249, 14251, 14281, 14293, 14303, 14321, 14323, 14327, 14341, 14347, 14369, 14387, 14389, 14401, 14407, 14411, 14419, 14423, 14431, 14437, 14447, 14449, 14461, 14479, 14489, 14503, 14519, 14533, 14537, 14543, 14549, 14551, 14557, 14561, 14563, 14591, 14593, 14621, 14627, 14629, 14633, 14639, 14653, 14657, 14669, 14683, 14699, 14713, 14717, 14723, 14731, 14737, 14741, 14747, 14753, 14759, 14767, 14771, 14779, 14783, 14797, 14813, 14821, 14827, 14831, 14843, 14851, 14867, 14869, 14879, 14887, 14891, 14897, 14923, 14929, 14939, 14947, 14951, 14957, 14969, 14983, 15013, 15017, 15031, 15053, 15061, 15073, 15077, 15083, 15091, 15101, 15107, 15121, 15131, 15137, 15139, 15149, 15161, 15173, 15187, 15193, 15199, 15217, 15227, 15233, 15241, 15259, 15263, 15269, 15271, 15277, 15287, 15289, 15299, 15307, 15313, 15319, 15329, 15331, 15349, 15359, 15361, 15373, 15377, 15383, 15391, 15401, 15413, 15427, 15439, 15443, 15451, 15461, 15467, 15473, 15493, 15497, 15511, 15527, 15541, 15551, 15559, 15569, 15581, 15583, 15601, 15607, 15619, 15629, 15641, 15643, 15647, 15649, 15661, 15667, 15671, 15679, 15683, 15727, 15731, 15733, 15737, 15739, 15749, 15761, 15767, 15773, 15787, 15791, 15797, 15803, 15809, 15817, 15823, 15859, 15877, 15881, 15887, 15889, 15901, 15907, 15913, 15919, 15923, 15937, 15959, 15971, 15973, 15991, 16001, 16007, 16033, 16057, 16061, 16063, 16067, 16069, 16073, 16087, 16091, 16097, 16103, 16111, 16127, 16139, 16141, 16183, 16187, 16189, 16193, 16217, 16223, 16229, 16231, 16249, 16253, 16267, 16273, 16301, 16319, 16333, 16339, 16349, 16361, 16363, 16369, 16381, 16411, 16417, 16421, 16427, 16433, 16447, 16451, 16453, 16477, 16481, 16487, 16493, 16519, 16529, 16547, 16553, 16561, 16567, 16573, 16603, 16607, 16619, 16631, 16633, 16649, 16651, 16657, 16661, 16673, 16691, 16693, 16699, 16703, 16729, 16741, 16747, 16759, 16763, 16787, 16811, 16823, 16829, 16831, 16843, 16871, 16879, 16883, 16889, 16901, 16903, 16921, 16927, 16931, 16937, 16943, 16963, 16979, 16981, 16987, 16993, 17011, 17021, 17027, 17029, 17033, 17041, 17047, 17053, 17077, 17093, 17099, 17107, 17117, 17123, 17137, 17159, 17167, 17183, 17189, 17191, 17203, 17207, 17209, 17231, 17239, 17257, 17291, 17293, 17299, 17317, 17321, 17327, 17333, 17341, 17351, 17359, 17377, 17383, 17387, 17389, 17393, 17401, 17417, 17419, 17431, 17443, 17449, 17467, 17471, 17477, 17483, 17489, 17491, 17497, 17509, 17519, 17539, 17551, 17569, 17573, 17579, 17581, 17597, 17599, 17609, 17623, 17627, 17657, 17659, 17669, 17681, 17683, 17707, 17713, 17729, 17737, 17747, 17749, 17761, 17783, 17789, 17791, 17807, 17827, 17837, 17839, 17851, 17863, 17881, 17891, 17903, 17909, 17911, 17921, 17923, 17929, 17939, 17957, 17959, 17971, 17977, 17981, 17987, 17989, 18013, 18041, 18043, 18047, 18049, 18059, 18061, 18077, 18089, 18097, 18119, 18121, 18127, 18131, 18133, 18143, 18149, 18169, 18181, 18191, 18199, 18211, 18217, 18223, 18229, 18233, 18251, 18253, 18257, 18269, 18287, 18289, 18301, 18307, 18311, 18313, 18329, 18341, 18353, 18367, 18371, 18379, 18397, 18401, 18413, 18427, 18433, 18439, 18443, 18451, 18457, 18461, 18481, 18493, 18503, 18517, 18521, 18523, 18539, 18541, 18553, 18583, 18587, 18593, 18617, 18637, 18661, 18671, 18679, 18691, 18701, 18713, 18719, 18731, 18743, 18749, 18757, 18773, 18787, 18793, 18797, 18803, 18839, 18859, 18869, 18899, 18911, 18913, 18917, 18919, 18947, 18959, 18973, 18979, 19001, 19009, 19013, 19031, 19037, 19051, 19069, 19073, 19079, 19081, 19087, 19121, 19139, 19141, 19157, 19163, 19181, 19183, 19207, 19211, 19213, 19219, 19231, 19237, 19249, 19259, 19267, 19273, 19289, 19301, 19309, 19319, 19333, 19373, 19379, 19381, 19387, 19391, 19403, 19417, 19421, 19423, 19427, 19429, 19433, 19441, 19447, 19457, 19463, 19469, 19471, 19477, 19483, 19489, 19501, 19507, 19531, 19541, 19543, 19553, 19559, 19571, 19577, 19583, 19597, 19603, 19609, 19661, 19681, 19687, 19697, 19699, 19709, 19717, 19727, 19739, 19751, 19753, 19759, 19763, 19777, 19793, 19801, 19813, 19819, 19841, 19843, 19853, 19861, 19867, 19889, 19891, 19913, 19919, 19927, 19937, 19949, 19961, 19963, 19973, 19979, 19991, 19993, 19997, 20011, 20021, 20023, 20029, 20047, 20051, 20063, 20071, 20089, 20101, 20107, 20113, 20117, 20123, 20129, 20143, 20147, 20149, 20161, 20173, 20177, 20183, 20201, 20219, 20231, 20233, 20249, 20261, 20269, 20287, 20297, 20323, 20327, 20333, 20341, 20347, 20353, 20357, 20359, 20369, 20389, 20393, 20399, 20407, 20411, 20431, 20441, 20443, 20477, 20479, 20483, 20507, 20509, 20521, 20533, 20543, 20549, 20551, 20563, 20593, 20599, 20611, 20627, 20639, 20641, 20663, 20681, 20693, 20707, 20717, 20719, 20731, 20743, 20747, 20749, 20753, 20759, 20771, 20773, 20789, 20807, 20809, 20849, 20857, 20873, 20879, 20887, 20897, 20899, 20903, 20921, 20929, 20939, 20947, 20959, 20963, 20981, 20983, 21001, 21011, 21013, 21017, 21019, 21023, 21031, 21059, 21061, 21067, 21089, 21101, 21107, 21121, 21139, 21143, 21149, 21157, 21163, 21169, 21179, 21187, 21191, 21193, 21211, 21221, 21227, 21247, 21269, 21277, 21283, 21313, 21317, 21319, 21323, 21341, 21347, 21377, 21379, 21383, 21391, 21397, 21401, 21407, 21419, 21433, 21467, 21481, 21487, 21491, 21493, 21499, 21503, 21517, 21521, 21523, 21529, 21557, 21559, 21563, 21569, 21577, 21587, 21589, 21599, 21601, 21611, 21613, 21617, 21647, 21649, 21661, 21673, 21683, 21701, 21713, 21727, 21737, 21739, 21751, 21757, 21767, 21773, 21787, 21799, 21803, 21817, 21821, 21839, 21841, 21851, 21859, 21863, 21871, 21881, 21893, 21911, 21929, 21937, 21943, 21961, 21977, 21991, 21997, 22003, 22013, 22027, 22031, 22037, 22039, 22051, 22063, 22067, 22073, 22079, 22091, 22093, 22109, 22111, 22123, 22129, 22133, 22147, 22153, 22157, 22159, 22171, 22189, 22193, 22229, 22247, 22259, 22271, 22273, 22277, 22279, 22283, 22291, 22303, 22307, 22343, 22349, 22367, 22369, 22381, 22391, 22397, 22409, 22433, 22441, 22447, 22453, 22469, 22481, 22483, 22501, 22511, 22531, 22541, 22543, 22549, 22567, 22571, 22573, 22613, 22619, 22621, 22637, 22639, 22643, 22651, 22669, 22679, 22691, 22697, 22699, 22709, 22717, 22721, 22727, 22739, 22741, 22751, 22769, 22777, 22783, 22787, 22807, 22811, 22817, 22853, 22859, 22861, 22871, 22877, 22901, 22907, 22921, 22937, 22943, 22961, 22963, 22973, 22993, 23003, 23011, 23017, 23021, 23027, 23029, 23039, 23041, 23053, 23057, 23059, 23063, 23071, 23081, 23087, 23099, 23117, 23131, 23143, 23159, 23167, 23173, 23189, 23197, 23201, 23203, 23209, 23227, 23251, 23269, 23279, 23291, 23293, 23297, 23311, 23321, 23327, 23333, 23339, 23357, 23369, 23371, 23399, 23417, 23431, 23447, 23459, 23473, 23497, 23509, 23531, 23537, 23539, 23549, 23557, 23561, 23563, 23567, 23581, 23593, 23599, 23603, 23609, 23623, 23627, 23629, 23633, 23663, 23669, 23671, 23677, 23687, 23689, 23719, 23741, 23743, 23747, 23753, 23761, 23767, 23773, 23789, 23801, 23813, 23819, 23827, 23831, 23833, 23857, 23869, 23873, 23879, 23887, 23893, 23899, 23909, 23911, 23917, 23929, 23957, 23971, 23977, 23981, 23993, 24001, 24007, 24019, 24023, 24029, 24043, 24049, 24061, 24071, 24077, 24083, 24091, 24097, 24103, 24107, 24109, 24113, 24121, 24133, 24137, 24151, 24169, 24179, 24181, 24197, 24203, 24223, 24229, 24239, 24247, 24251, 24281, 24317, 24329, 24337, 24359, 24371, 24373, 24379, 24391, 24407, 24413, 24419, 24421, 24439, 24443, 24469, 24473, 24481, 24499, 24509, 24517, 24527, 24533, 24547, 24551, 24571, 24593, 24611, 24623, 24631, 24659, 24671, 24677, 24683, 24691, 24697, 24709, 24733, 24749, 24763, 24767, 24781, 24793, 24799, 24809, 24821, 24841, 24847, 24851, 24859, 24877, 24889, 24907, 24917, 24919, 24923, 24943, 24953, 24967, 24971, 24977, 24979, 24989, 25013, 25031, 25033, 25037, 25057, 25073, 25087, 25097, 25111, 25117, 25121, 25127, 25147, 25153, 25163, 25169, 25171, 25183, 25189, 25219, 25229, 25237, 25243, 25247, 25253, 25261, 25301, 25303, 25307, 25309, 25321, 25339, 25343, 25349, 25357, 25367, 25373, 25391, 25409, 25411, 25423, 25439, 25447, 25453, 25457, 25463, 25469, 25471, 25523, 25537, 25541, 25561, 25577, 25579, 25583, 25589, 25601, 25603, 25609, 25621, 25633, 25639, 25643, 25657, 25667, 25673, 25679, 25693, 25703, 25717, 25733, 25741, 25747, 25759, 25763, 25771, 25793, 25799, 25801, 25819, 25841, 25847, 25849, 25867, 25873, 25889, 25903, 25913, 25919, 25931, 25933, 25939, 25943, 25951, 25969, 25981, 25997, 25999, 26003, 26017, 26021, 26029, 26041, 26053, 26083, 26099, 26107, 26111, 26113, 26119, 26141, 26153, 26161, 26171, 26177, 26183, 26189, 26203, 26209, 26227, 26237, 26249, 26251, 26261, 26263, 26267, 26293, 26297, 26309, 26317, 26321, 26339, 26347, 26357, 26371, 26387, 26393, 26399, 26407, 26417, 26423, 26431, 26437, 26449, 26459, 26479, 26489, 26497, 26501, 26513, 26539, 26557, 26561, 26573, 26591, 26597, 26627, 26633, 26641, 26647, 26669, 26681, 26683, 26687, 26693, 26699, 26701, 26711, 26713, 26717, 26723, 26729, 26731, 26737, 26759, 26777, 26783, 26801, 26813, 26821, 26833, 26839, 26849, 26861, 26863, 26879, 26881, 26891, 26893, 26903, 26921, 26927, 26947, 26951, 26953, 26959, 26981, 26987, 26993, 27011, 27017, 27031, 27043, 27059, 27061, 27067, 27073, 27077, 27091, 27103, 27107, 27109, 27127, 27143, 27179, 27191, 27197, 27211, 27239, 27241, 27253, 27259, 27271, 27277, 27281, 27283, 27299, 27329, 27337, 27361, 27367, 27397, 27407, 27409, 27427, 27431, 27437, 27449, 27457, 27479, 27481, 27487, 27509, 27527, 27529, 27539, 27541, 27551, 27581, 27583, 27611, 27617, 27631, 27647, 27653, 27673, 27689, 27691, 27697, 27701, 27733, 27737, 27739, 27743, 27749, 27751, 27763, 27767, 27773, 27779, 27791, 27793, 27799, 27803, 27809, 27817, 27823, 27827, 27847, 27851, 27883, 27893, 27901, 27917, 27919, 27941, 27943, 27947, 27953, 27961, 27967, 27983, 27997, 28001, 28019, 28027, 28031, 28051, 28057, 28069, 28081, 28087, 28097, 28099, 28109, 28111, 28123, 28151, 28163, 28181, 28183, 28201, 28211, 28219, 28229, 28277, 28279, 28283, 28289, 28297, 28307, 28309, 28319, 28349, 28351, 28387, 28393, 28403, 28409, 28411, 28429, 28433, 28439, 28447, 28463, 28477, 28493, 28499, 28513, 28517, 28537, 28541, 28547, 28549, 28559, 28571, 28573, 28579, 28591, 28597, 28603, 28607, 28619, 28621, 28627, 28631, 28643, 28649, 28657, 28661, 28663, 28669, 28687, 28697, 28703, 28711, 28723, 28729, 28751, 28753, 28759, 28771, 28789, 28793, 28807, 28813, 28817, 28837, 28843, 28859, 28867, 28871, 28879, 28901, 28909, 28921, 28927, 28933, 28949, 28961, 28979, 29009, 29017, 29021, 29023, 29027, 29033, 29059, 29063, 29077, 29101, 29123, 29129, 29131, 29137, 29147, 29153, 29167, 29173, 29179, 29191, 29201, 29207, 29209, 29221, 29231, 29243, 29251, 29269, 29287, 29297, 29303, 29311, 29327, 29333, 29339, 29347, 29363, 29383, 29387, 29389, 29399, 29401, 29411, 29423, 29429, 29437, 29443, 29453, 29473, 29483, 29501, 29527, 29531, 29537, 29567, 29569, 29573, 29581, 29587, 29599, 29611, 29629, 29633, 29641, 29663, 29669, 29671, 29683, 29717, 29723, 29741, 29753, 29759, 29761, 29789, 29803, 29819, 29833, 29837, 29851, 29863, 29867, 29873, 29879, 29881, 29917, 29921, 29927, 29947, 29959, 29983, 29989, 30011, 30013, 30029, 30047, 30059, 30071, 30089, 30091, 30097, 30103, 30109, 30113, 30119, 30133, 30137, 30139, 30161, 30169, 30181, 30187, 30197, 30203, 30211, 30223, 30241, 30253, 30259, 30269, 30271, 30293, 30307, 30313, 30319, 30323, 30341, 30347, 30367, 30389, 30391, 30403, 30427, 30431, 30449, 30467, 30469, 30491, 30493, 30497, 30509, 30517, 30529, 30539, 30553, 30557, 30559, 30577, 30593, 30631, 30637, 30643, 30649, 30661, 30671, 30677, 30689, 30697, 30703, 30707, 30713, 30727, 30757, 30763, 30773, 30781, 30803, 30809, 30817, 30829, 30839, 30841, 30851, 30853, 30859, 30869, 30871, 30881, 30893, 30911, 30931, 30937, 30941, 30949, 30971, 30977, 30983, 31013, 31019, 31033, 31039, 31051, 31063, 31069, 31079, 31081, 31091, 31121, 31123, 31139, 31147, 31151, 31153, 31159, 31177, 31181, 31183, 31189, 31193, 31219, 31223, 31231, 31237, 31247, 31249, 31253, 31259, 31267, 31271, 31277, 31307, 31319, 31321, 31327, 31333, 31337, 31357, 31379, 31387, 31391, 31393, 31397, 31469, 31477, 31481, 31489, 31511, 31513, 31517, 31531, 31541, 31543, 31547, 31567, 31573, 31583, 31601, 31607]

def isprime(n):
	for i in primes:
		if n == i:
			return True
		if n % i == 0:
			return False
	return True
t = int(input())
for i in range(t):
	n = int(input())
	t = 0
	if n % 2 == 1 and n > 1:
		print('Ashishgup')
	elif n == 1:
		print('FastestFinger')
	else:
		while n % 2 == 0:
			t += 1
			n //= 2
		if n > 1:
			a = isprime(n)
		else:
			a = False
		if a and t == 1 or (n == 1 and t > 1):
			print('FastestFinger')
		else:
			print('Ashishgup')


def factorList(n):
	f = {}
	c = 0
	r = int(n ** 0.5)
	for i in range(2, r + 2):
		while n % i == 0:
			c += 1
			n = n // i
		if c != 0:
			f[i] = c
			c = 0
	if n != 1:
		f[n] = 1
	return f
T = int(input())
for t in range(T):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 == 1:
		print('Ashishgup')
	else:
		d = 1
		fl = factorList(n)
		o = 0
		for (k, v) in fl.items():
			if k % 2 == 1:
				o += v
		if fl[2] == 1:
			if o > 1:
				print('Ashishgup')
			else:
				print('FastestFinger')
		elif o > 0:
			print('Ashishgup')
		else:
			print('FastestFinger')


import sys
input = sys.stdin.readline
test = int(input())

def isPrime(n):
	if n <= 1:
		return False
	if n <= 3:
		return True
	if n % 2 == 0 or n % 3 == 0:
		return False
	i = 5
	while i * i <= n:
		if n % i == 0 or n % (i + 2) == 0:
			return False
		i = i + 6
	return True
while test != 0:
	test -= 1
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	if n == 2:
		print('Ashishgup')
		continue
	if n % 2 == 1:
		print('Ashishgup')
		continue
	ev = 1
	while n % 2 == 0:
		n = n // 2
		ev *= 2
	if n == 1:
		print('FastestFinger')
		continue
	if ev != 2:
		print('Ashishgup')
	elif isPrime(n):
		print('FastestFinger')
	else:
		print('Ashishgup')


import math

def primeFactors(n):
	c = 0
	while n % 2 == 0:
		n = n / 2
	for i in range(3, int(math.sqrt(n)) + 1, 2):
		while n % i == 0:
			c = c + 1
			n = n / i
	if n > 2:
		c = c + 1
	return c
t = int(input())
for _ in range(t):
	n = int(input())
	c = primeFactors(n)
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 == 1:
		print('Ashishgup')
	elif n and (not n & n - 1):
		print('FastestFinger')
	else:
		m = n
		if m % 4 == 0:
			print('Ashishgup')
		else:
			c = primeFactors(n)
			if c == 1:
				print('FastestFinger')
			else:
				print('Ashishgup')


import math
t = int(input())
rez = []
for i in range(t):
	n = int(input())
	if n == 2 or (n != 1 and n % 2 == 1):
		rez.append('Ashishgup')
	elif n == 1:
		rez.append('FastestFinger')
	elif (n != 0) & (n & ~n + 1 == n):
		rez.append('FastestFinger')
	elif int(n / 2) % 2 == 0:
		rez.append('Ashishgup')
	else:
		d = 3
		while d * d <= n and n % d != 0:
			d += 2
		if d * d > n:
			rez.append('FastestFinger')
		else:
			rez.append('Ashishgup')
for i in range(len(rez)):
	print(rez[i])


from sys import stdin
from collections import deque
mod = 10 ** 9 + 7
import sys
import random
from queue import PriorityQueue
from collections import Counter as cc
from bisect import bisect_right
from bisect import bisect_left
from collections import defaultdict
from math import sqrt, factorial, gcd, log2, inf, ceil
import heapq
input = lambda : sys.stdin.readline().rstrip()
from sys import stdin, stdout
from heapq import heapify, heappush, heappop
from itertools import permutations
from math import factorial as f

def ncr(n, r, p):
	num = den = 1
	for i in range(r):
		num = num * (n - i) % p
		den = den * (i + 1) % p
	return num * pow(den, p - 2, p) % p
import sys

def sqr(n1):
	ka = set()
	for i in range(2, int(sqrt(n1)) + 1):
		if n1 % i == 0:
			ka.add(n1 // i)
			ka.add(i)
	return ka
ha = set()
t = int(input())
for i in range(1, 20):
	ha.add(2 ** i)
for _ in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	if n == 2:
		print('Ashishgup')
		continue
	if n % 2 != 0:
		print('Ashishgup')
		continue
	if n in ha:
		print('FastestFinger')
		continue
	z = sqr(n)
	ans = 'FastestFinger'
	for i in z:
		if n // i != 2 and i % 2 != 0:
			ans = 'Ashishgup'
	print(ans)


from collections import *
from math import *
t = int(input())
for y in range(t):
	n = int(input())
	m = n
	if n == 1:
		print('FastestFinger')
		continue
	if n & 1:
		print('Ashishgup')
		continue
	ct = 0
	while n % 2 == 0:
		ct += 1
		n //= 2
	if ct == 1:
		if m == 2:
			print('Ashishgup')
			continue
		else:
			i = 3
			cnt = 0
			while i * i <= n:
				while n % i == 0:
					cnt += 1
					n //= i
				i += 1
			if n > 1:
				cnt += 1
			if cnt == 1:
				print('FastestFinger')
				continue
			else:
				print('Ashishgup')
				continue
	if n == 1:
		print('FastestFinger')
		continue
	else:
		print('Ashishgup')
		continue


def isPowerOfTwo(x):
	return x and (not x & x - 1)

def isPrime(n):
	if n <= 1:
		return False
	if n <= 3:
		return True
	if n % 2 == 0 or n % 3 == 0:
		return False
	i = 5
	while i * i <= n:
		if n % i == 0 or n % (i + 2) == 0:
			return False
		i = i + 6
	return True
t = int(input())
for _ in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 == 1:
		print('Ashishgup')
	elif n % 4 == 2:
		flag = 0
		m = n // 2
		if isPrime(m):
			print('FastestFinger')
		else:
			print('Ashishgup')
	elif isPowerOfTwo(n):
		print('FastestFinger')
	else:
		print('Ashishgup')


import math
wqr = int(input())
for er in range(wqr):
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	elif n == 2:
		print('Ashishgup')
		continue
	elif n % 2 != 0:
		print('Ashishgup')
		continue
	t = math.log(n, 2)
	if t == math.floor(t):
		print('FastestFinger')
		continue
	elif n % 4 == 0:
		print('Ashishgup')
	else:
		cnt = 0
		i = 3
		n = n // 2
		while i < int(math.sqrt(n) + 1):
			if n % i == 0:
				cnt += 1
				break
			i += 2
		if cnt == 1:
			print('Ashishgup')
		else:
			print('FastestFinger')


import math
import sys
t = int(input())

def isPrime(x):
	if x == 1:
		return False
	cur = 2
	while cur * cur <= x:
		if x % cur == 0:
			return False
		cur = cur + 1
	return True
for i in range(t):
	n = int(input())
	rem = n
	cnt = 0
	while rem % 2 == 0:
		cnt = cnt + 1
		rem = rem // 2
	if cnt > 1 or cnt == 0:
		if rem == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')
	elif isPrime(rem):
		print('FastestFinger')
	else:
		print('Ashishgup')


global N
N = 50000

def prime(n):
	for i in range(2, min(N, n)):
		if not n % i:
			return 0
	return 1
for _ in range(int(input())):
	n = int(input())
	flag = n == 1
	if n > 2 and (not n % 2):
		if not n & n - 1:
			flag = 1
		elif n % 4 and prime(n // 2):
			flag = 1
	if flag:
		print('FastestFinger')
	else:
		print('Ashishgup')


import os
import sys
from io import BytesIO, IOBase
BUFSIZE = 8192

class FastIO(IOBase):
	newlines = 0

	def __init__(self, file):
		self._fd = file.fileno()
		self.buffer = BytesIO()
		self.writable = 'x' in file.mode or 'r' not in file.mode
		self.write = self.buffer.write if self.writable else None

	def read(self):
		while True:
			b = os.read(self._fd, max(os.fstat(self._fd).st_size, BUFSIZE))
			if not b:
				break
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines = 0
		return self.buffer.read()

	def readline(self):
		while self.newlines == 0:
			b = os.read(self._fd, max(os.fstat(self._fd).st_size, BUFSIZE))
			self.newlines = b.count(b'\n') + (not b)
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines -= 1
		return self.buffer.readline()

	def flush(self):
		if self.writable:
			os.write(self._fd, self.buffer.getvalue())
			(self.buffer.truncate(0), self.buffer.seek(0))

class IOWrapper(IOBase):

	def __init__(self, file):
		self.buffer = FastIO(file)
		self.flush = self.buffer.flush
		self.writable = self.buffer.writable
		self.write = lambda s: self.buffer.write(s.encode('ascii'))
		self.read = lambda : self.buffer.read().decode('ascii')
		self.readline = lambda : self.buffer.readline().decode('ascii')
(sys.stdin, sys.stdout) = (IOWrapper(sys.stdin), IOWrapper(sys.stdout))
input = lambda : sys.stdin.readline().rstrip('\r\n')

def RL():
	return map(int, sys.stdin.readline().rstrip().split())

def RLL():
	return list(map(int, sys.stdin.readline().rstrip().split()))

def N():
	return int(input())

def comb(n, m):
	return factorial(n) / (factorial(m) * factorial(n - m)) if n >= m else 0

def perm(n, m):
	return factorial(n) // factorial(n - m) if n >= m else 0

def mdis(x1, y1, x2, y2):
	return abs(x1 - x2) + abs(y1 - y2)
mod = 998244353
INF = float('inf')
from math import factorial, sqrt, ceil
from collections import Counter, defaultdict, deque
from heapq import heapify, heappop, heappush

def main():
	(a, b) = ('Ashishgup', 'FastestFinger')

	def pri(num):
		for i in range(2, ceil(sqrt(num)) + 1):
			if num % i == 0:
				return False
		return True
	for _ in range(N()):
		n = N()
		if n % 2 == 1 or n == 2:
			print(a if n != 1 else b)
		else:
			tn = n
			while tn % 2 == 0:
				tn //= 2
			if tn == 1:
				if n == 2:
					print(a)
				else:
					print(b)
			elif pri(tn):
				print(a if n // tn != 2 else b)
			else:
				print(a)
main()


def factorization(n):
	S = []
	tmp = n
	for i in range(2, int(-(-n ** 0.5 // 1)) + 1):
		if tmp % i == 0:
			while tmp % i == 0:
				tmp //= i
				S.append(i)
	if tmp != 1:
		S.append(tmp)
	return S
for i in range(int(input())):
	t = int(input())
	cnt = 0
	if t == 1:
		print('FastestFinger')
	elif t == 2:
		print('Ashishgup')
	elif t % 2 != 0:
		print('Ashishgup')
	else:
		while t % 2 == 0:
			t = t // 2
			cnt += 1
		if t == 1:
			print('FastestFinger')
		elif len(factorization(t)) == 1:
			if cnt >= 2:
				print('Ashishgup')
			if cnt == 1:
				print('FastestFinger')
		else:
			print('Ashishgup')


def inp():
	return int(input())

def inlt():
	return list(map(int, input().split()))

def insr():
	s = input()
	return list(s[:len(s)])

def invr():
	return map(int, input().split())
entries = inp()
for i in range(entries):
	n = inp()
	if n == 1:
		print('FastestFinger')
	elif n % 2 == 1 or n == 2:
		print('Ashishgup')
	else:
		flag = 1
		k = 3
		count = 0
		while k * k <= n:
			if n % k == 0:
				if k % 2 == 1 and n / k != 2 or (n / k % 2 == 1 and k != 2):
					print('Ashishgup')
					flag = 0
					break
			k += 1
		if flag:
			print('FastestFinger')


import sys
input = sys.stdin.readline
t = int(input())
answer = []
for kek in range(t):
	n = int(input())
	N = n
	a = []
	i = 2
	two = 0
	while i <= n ** (1 / 2) + 2:
		if n % i == 0:
			if i == 2:
				two += 1
			a.append(i)
			n //= i
		else:
			i += 1
	if n > 1:
		a.append(n)
	if N % 2 == 1:
		if N == 1:
			answer.append('FastestFinger')
		else:
			answer.append('Ashishgup')
	elif N == 2:
		answer.append('Ashishgup')
	elif len(a) - two == 0:
		answer.append('FastestFinger')
	elif two >= 2:
		answer.append('Ashishgup')
	elif len(a) - two > 1:
		answer.append('Ashishgup')
	else:
		answer.append('FastestFinger')
print(*answer, sep='\n')


import math

def prime(n):
	while n % 2 == 0:
		lis.append(2)
		n = n / 2
	for i in range(3, int(math.sqrt(n)) + 1, 2):
		while n % i == 0:
			lis.append(i)
			n = n / i
	if n > 2:
		lis.append(n)
for _ in range(int(input())):
	lis = []
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 != 0:
		print('Ashishgup')
	else:
		prime(n)
		c = 0
		c1 = 0
		for i in lis:
			if i % 2 == 0:
				c += 1
			else:
				c1 += 1
		if c > 1 and c1 > 0:
			print('Ashishgup')
		elif c == 1 and c1 > 1:
			print('Ashishgup')
		else:
			print('FastestFinger')


from math import sqrt, floor

def f(ele):
	for i in range(2, floor(sqrt(ele)) + 1):
		if ele % i == 0:
			x = i
			y = n // i
			if x % 2 != 0 and y != 2:
				return True
			if y % 2 != 0 and x != 2:
				return True
	return False
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	if n == 2:
		print('Ashishgup')
		continue
	if n % 2 != 0:
		print('Ashishgup')
		continue
	if f(n):
		print('Ashishgup')
	else:
		print('FastestFinger')


import os
import sys
from io import BytesIO, IOBase
import math

def isprime(n):
	for x in range(2, math.floor(math.sqrt(n) + 1)):
		if n % x == 0:
			return False
	return True

def main():
	t = int(input())
	for _ in range(t):
		n = int(input())
		if n == 1:
			print('FastestFinger')
		elif n % 2 != 0 or n == 2:
			print('Ashishgup')
		elif math.floor(math.log(n, 2)) == math.log(n, 2):
			print('FastestFinger')
		else:
			cnt = 0
			while n % 2 == 0:
				n = n // 2
				cnt += 1
			if cnt == 1 and isprime(n) == False:
				print('Ashishgup')
			elif cnt >= 2:
				print('Ashishgup')
			else:
				print('FastestFinger')
BUFSIZE = 8192

class FastIO(IOBase):
	newlines = 0

	def __init__(self, file):
		self._fd = file.fileno()
		self.buffer = BytesIO()
		self.writable = 'x' in file.mode or 'r' not in file.mode
		self.write = self.buffer.write if self.writable else None

	def read(self):
		while True:
			b = os.read(self._fd, max(os.fstat(self._fd).st_size, BUFSIZE))
			if not b:
				break
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines = 0
		return self.buffer.read()

	def readline(self):
		while self.newlines == 0:
			b = os.read(self._fd, max(os.fstat(self._fd).st_size, BUFSIZE))
			self.newlines = b.count(b'\n') + (not b)
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines -= 1
		return self.buffer.readline()

	def flush(self):
		if self.writable:
			os.write(self._fd, self.buffer.getvalue())
			(self.buffer.truncate(0), self.buffer.seek(0))

class IOWrapper(IOBase):

	def __init__(self, file):
		self.buffer = FastIO(file)
		self.flush = self.buffer.flush
		self.writable = self.buffer.writable
		self.write = lambda s: self.buffer.write(s.encode('ascii'))
		self.read = lambda : self.buffer.read().decode('ascii')
		self.readline = lambda : self.buffer.readline().decode('ascii')
(sys.stdin, sys.stdout) = (IOWrapper(sys.stdin), IOWrapper(sys.stdout))
input = lambda : sys.stdin.readline().rstrip('\r\n')
main()


from math import sqrt

def is_prime(n):
	for d in range(2, round(sqrt(n) + 1)):
		if n % d == 0:
			return False
	return True

def check(n):
	if n == 2:
		return False
	m = n
	while m % 2 == 0:
		m //= 2
	if m == 1:
		return True
	if n % 2 == 0 and is_prime(n // 2):
		if n // 2 == 2:
			return False
		return True
	return False
t = int(input())
for _ in range(t):
	n = int(input())
	if check(n):
		print('FastestFinger')
	else:
		print('Ashishgup')


import sys
winners = ['FastestFinger', 'Ashishgup']
t = int(input())
for _t in range(t):
	n = int(sys.stdin.readline())
	two_fact = 0
	if n == 1:
		winner = 0
	elif n == 2 or n % 2:
		winner = 1
	else:
		while n > 1:
			if not n % 2:
				n //= 2
				two_fact += 1
			else:
				break
		if n == 1:
			winner = 0
		else:
			i = 3
			prime = True
			while i * i <= n:
				if not n % i:
					prime = False
					break
				i += 2
			if prime:
				if two_fact >= 2:
					winner = 1
				else:
					winner = 0
			else:
				winner = 1
	print(winners[winner])


def isPrime(n):
	if n <= 1:
		return False
	if n <= 3:
		return True
	if n % 2 == 0 or n % 3 == 0:
		return False
	i = 5
	while i * i <= n:
		if n % i == 0 or n % (i + 2) == 0:
			return False
		i = i + 6
	return True

def isit(a):
	i = 1
	for i in range(34):
		if a == 2 ** i:
			return True
	return False

def stat(n):
	dn = int(n)
	pt = 0
	while dn % 2 == 0:
		dn /= 2
		pt += 1
	kk = isPrime(dn)
	return [pt, kk]
a = 'Ashishgup'
b = 'FastestFinger'
t = int(input())
for tt in range(t):
	n = int(input())
	if n == 1:
		print(b)
	elif n == 2:
		print(a)
	elif isit(n):
		print(b)
	elif stat(n)[0] == 1:
		if stat(n)[1]:
			print(b)
		else:
			print(a)
	else:
		print(a)


import math

def canwin(n):
	if n == 1:
		return False
	if n == 2:
		return True
	if n % 2 == 1:
		return True
	for i in range(2, math.floor(math.sqrt(n)) + 1):
		if n % i == 0:
			(first, second) = (i, n // i)
			if first % 2 != 0 and second != 2:
				return True
			elif second % 2 != 0 and first != 2:
				return True
	return False
t = int(input())
for i in range(t):
	n = int(input())
	if canwin(n):
		print('Ashishgup')
	else:
		print('FastestFinger')


import math
for _ in range(int(input())):
	n = int(input())
	odd = []

	def check(n, odd):
		temp = -1
		for i in range(2, math.ceil(math.sqrt(n))):
			if n % i == 0:
				if i & 1 and n // i != 2:
					temp = max(temp, i)
				if i & 1 == 0 and i != n // i and n // i & 1 and (n // (n // i) != 2):
					temp = max(temp, n // i)
		if temp != -1:
			odd.append(temp)
			return check(n // temp, odd)
		return True
	if n == 1:
		print('FastestFinger')
		continue
	elif n == 2 or n & 1:
		print('Ashishgup')
		continue
	check(n, odd)
	x = len(odd)
	for i in odd:
		n //= i
	if x == 0:
		print('FastestFinger')
	elif x & 1 and n == 2:
		print('FastestFinger')
	elif x & 1 == 0 and n == 2:
		print('Ashishgup')
	elif x & 1:
		print('Ashishgup')
	else:
		print('FastestFinger')


from math import log
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 != 0 or n == 2:
		print('Ashishgup')
	else:
		(x, count) = (0, 0)
		while n % 2 == 0:
			n //= 2
			count += 1
		for i in range(2, int(n ** 0.5) + 1):
			if n % i == 0:
				x = 1
				break
		if x == 1 or (count > 1 and n % 2 != 0 and (n > 1)):
			print('Ashishgup')
		else:
			print('FastestFinger')


import math

def is_prime(n):
	sqn = int(math.ceil(math.sqrt(n)))
	for x in range(2, sqn + 1):
		if n % x == 0:
			return False
	return True
ans = ['Ashishgup', 'FastestFinger']
tc = int(input().strip())
while tc:
	n = int(input().strip())
	if n == 1:
		print(ans[1])
	elif n == 2:
		print(ans[0])
	elif n % 2 == 1:
		print(ans[0])
	elif 2 ** int(math.floor(math.log2(n))) == n:
		print(ans[1])
	elif n % 4 == 0:
		print(ans[0])
	elif is_prime(n // 2):
		print(ans[1])
	else:
		print(ans[0])
	tc -= 1


import math

def Log2(x):
	if x == 0:
		return False
	return math.log10(x) / math.log10(2)

def isPowerOfTwo(n):
	return math.ceil(Log2(n)) == math.floor(Log2(n))

def isPrime(n):
	flag = 1
	for i in range(2, int(math.sqrt(n)) + 1):
		if n % i == 0:
			flag = 0
			break
	if flag == 1:
		return True
	else:
		return False
t = int(input())
for i in range(0, t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2 or n & 1:
		print('Ashishgup')
	elif int(n & n - 1) == 0:
		print('FastestFinger')
	elif n % 4 == 0:
		print('Ashishgup')
	elif isPrime(int(n / 2)):
		print('FastestFinger')
	else:
		print('Ashishgup')


import sys, os, io

def rs():
	return sys.stdin.readline().rstrip()

def ri():
	return int(sys.stdin.readline())

def ria():
	return list(map(int, sys.stdin.readline().split()))

def ws(s):
	sys.stdout.write(s + '\n')

def wi(n):
	sys.stdout.write(str(n) + '\n')

def wia(a):
	sys.stdout.write(' '.join([str(x) for x in a]) + '\n')
import math
from collections import deque

def main():
	tc = ri()
	for _ in range(tc):
		n = ri()
		if n == 1:
			print('FastestFinger')
		elif n % 2 != 0:
			print('Ashishgup')
		else:
			x = n
			if n == 2:
				print('Ashishgup')
			elif x and (not x & x - 1):
				print('FastestFinger')
			else:
				pf = []
				while n % 2 == 0:
					pf.append(2)
					n = n / 2
				for i in range(3, int(math.sqrt(n)) + 1, 2):
					while n % i == 0:
						pf.append(i)
						n = n / i
				if n > 2:
					pf.append(n)
				e = 0
				o = 0
				for i in pf:
					if i % 2 == 0:
						e += 1
					else:
						o += 1
				if e > 1:
					print('Ashishgup')
				elif o > 1:
					print('Ashishgup')
				else:
					print('FastestFinger')

class FastReader(io.IOBase):
	newlines = 0

	def __init__(self, fd, chunk_size=1024 * 8):
		self._fd = fd
		self._chunk_size = chunk_size
		self.buffer = io.BytesIO()

	def read(self):
		while True:
			b = os.read(self._fd, max(os.fstat(self._fd).st_size, self._chunk_size))
			if not b:
				break
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines = 0
		return self.buffer.read()

	def readline(self, size=-1):
		while self.newlines == 0:
			b = os.read(self._fd, max(os.fstat(self._fd).st_size, self._chunk_size if size == -1 else size))
			self.newlines = b.count(b'\n') + (not b)
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines -= 1
		return self.buffer.readline()

class FastWriter(io.IOBase):

	def __init__(self, fd):
		self._fd = fd
		self.buffer = io.BytesIO()
		self.write = self.buffer.write

	def flush(self):
		os.write(self._fd, self.buffer.getvalue())
		(self.buffer.truncate(0), self.buffer.seek(0))

class FastStdin(io.IOBase):

	def __init__(self, fd=0):
		self.buffer = FastReader(fd)
		self.read = lambda : self.buffer.read().decode('ascii')
		self.readline = lambda : self.buffer.readline().decode('ascii')

class FastStdout(io.IOBase):

	def __init__(self, fd=1):
		self.buffer = FastWriter(fd)
		self.write = lambda s: self.buffer.write(s.encode('ascii'))
		self.flush = self.buffer.flush
sys.stdin = FastStdin()
sys.stdout = FastStdout()
main()


for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n & 1 == 1:
		if n == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')
	else:
		count = 0
		while n > 0 and n % 2 == 0:
			n = n // 2
			count += 1
		if n > 1:
			flag = True
			if count > 1:
				print('Ashishgup')
			else:
				for i in range(3, int(n ** 0.5) + 1):
					if n % i == 0:
						flag = False
				if flag:
					print('FastestFinger')
				else:
					print('Ashishgup')
		else:
			print('FastestFinger')


def is_prime(x: int) -> bool:
	if x < 2:
		return False
	y = 2
	while y * y <= x:
		if x % y == 0:
			return False
		y += 1
	return True

def solve(n: int) -> bool:
	if n == 1:
		return False
	if n == 2:
		return True
	if n & n - 1 == 0:
		return False
	if n % 4 != 2:
		return True
	return not is_prime(n // 2)
tc = int(input())
while tc > 0:
	n = int(input())
	print('Ashishgup' if solve(n) else 'FastestFinger')
	tc -= 1


def prime(n):
	for i in range(2, int(n ** 0.5) + 1):
		if n % i == 0:
			return False
	return True
for _ in range(int(input())):
	n = int(input())
	s1 = 'Ashishgup'
	s2 = 'FastestFinger'
	if n == 1:
		print(s2)
		continue
	if n % 2 != 0 or n == 2:
		print(s1)
		continue
	a = bin(n)[2:]
	if a.count('1') == 1:
		print(s2)
		continue
	if n % 4 == 0:
		print(s1)
	else:
		n = n // 2
		if prime(n):
			print(s2)
		else:
			print(s1)


import math
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	elif n == 2:
		print('Ashishgup')
		continue
	elif n % 2 != 0:
		print('Ashishgup')
		continue
	f1 = 0
	for i in range(2, math.floor(math.sqrt(n)) + 1):
		if n % i == 0:
			(f, s) = (i, n // i)
			if f % 2 != 0 and s != 2:
				f1 = 1
				break
			if s % 2 != 0 and f != 2:
				f1 = 1
				break
	if f1:
		print('Ashishgup')
	else:
		print('FastestFinger')


for _ in range(int(input())):
	n = int(input())
	x = n + 0
	if n == 1:
		print('FastestFinger')
		continue
	if n == 2:
		print('Ashishgup')
		continue
	i = 2
	cnt = 0
	div = []
	while i * i <= n:
		if n % i == 0:
			if i % 2 == 1:
				cnt += 1
				div += [i]
			n //= i
		else:
			i += 1
	if n % 2 == 1:
		cnt += 1
		div += [n]
	if x % 2 == 1:
		print('Ashishgup')
	elif cnt == 0:
		print('FastestFinger')
	elif cnt == 1:
		if x // div[0] == 2:
			print('FastestFinger')
		else:
			print('Ashishgup')
	else:
		print('Ashishgup')


import sys
input = sys.stdin.buffer.readline

def solution():
	for _ in range(int(input())):
		flag = 0
		cnt = 0
		n = int(input())
		if n == 1:
			print('FastestFinger')
		elif n % 2 != 0:
			print('Ashishgup')
		else:
			while n >= 2:
				d = []
				if n == 1:
					if cnt % 2 != 0:
						print('Ashishgup')
					else:
						print('FastestFinger')
					break
				if n % 2 == 0:
					for i in range(2, int(n ** 0.5) + 1):
						if n % i == 0:
							y = n // i
							if i % 2 != 0:
								d.append(i)
								flag = 1
							if y % 2 != 0:
								d.append(y)
					if d == []:
						if n == 2:
							if cnt % 2 == 0:
								print('Ashishgup')
							else:
								print('FastestFinger')
						elif cnt % 2 != 0:
							print('Ashishgup')
						else:
							print('FastestFinger')
						break
					else:
						d.sort()
						ma = d[-1]
						m = d[len(d) - 2]
						if n // ma == 2:
							n //= m
						else:
							n //= ma
					cnt += 1
				else:
					if cnt % 2 == 0:
						print('Ashishgup')
					else:
						print('FastestFinger')
					break
solution()


def divisors(n):
	div = []
	for i in range(2, int(n ** (1 / 2)) + 1):
		if n % i == 0:
			div.append(i)
			if i != n // i:
				div.append(n // i)
	return div
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n & 1:
		print('Ashishgup')
	else:
		div = divisors(n)
		if not any((i & 1 for i in div)):
			print('Ashishgup' if n == 2 else 'FastestFinger')
		elif n % 4 == 0:
			print('Ashishgup')
		elif len(divisors(n // 2)) == 0:
			print('FastestFinger')
		else:
			print('Ashishgup')


import math
from sys import stdin
for _ in range(int(stdin.readline())):
	n = int(stdin.readline())
	if n == 1:
		print('FastestFinger')
	elif n % 2 == 1 or n == 2:
		print('Ashishgup')
	else:
		n2 = 0
		while n % 2 == 0:
			n //= 2
			n2 += 1
		if n == 1:
			print('FastestFinger')
		else:
			is_prime = True
			for i in range(3, int(math.sqrt(n)) + 1, 2):
				if n % i == 0:
					is_prime = False
			if is_prime and n2 == 1:
				print('FastestFinger')
			else:
				print('Ashishgup')


import math

def checktwo(n):
	while n % 2 == 0:
		n = n // 2
	if n <= 1:
		return True
	return False

def primefactors(n):
	while n % 2 == 0:
		n = n // 2
	count = 0
	for i in range(3, int(math.sqrt(n)) + 1, 2):
		while n % i == 0:
			count += 1
			n = n // i
	if n > 2:
		count += 1
	return count
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n != 1 and n % 2 == 1:
		print('Ashishgup')
	elif checktwo(n) == True:
		print('FastestFinger')
	elif n % 4 == 0:
		print('Ashishgup')
	else:
		countodd = primefactors(n)
		if countodd == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')


def tt(a):
	x = 2
	ss = 0
	while x * x <= a:
		if a % x == 0:
			if x * x != a:
				if a // x % 2 != 0:
					ss += 1
				if x % 2 != 0:
					ss += 1
			elif x % 2 != 0:
				ss += 1
		x += 1
	return ss

def ss(a):
	while a // 2 == a / 2:
		a //= 2
	return a
for _ in range(int(input())):
	a = int(input())
	if a == 1:
		print('FastestFinger')
	elif a == 2:
		print('Ashishgup')
	elif a % 2 == 1:
		print('Ashishgup')
	else:
		dd = tt(a)
		u = ss(a)
		if dd > 1:
			print('Ashishgup')
		elif dd == 0:
			print('FastestFinger')
		elif dd == 1 and a // u != 2:
			print('Ashishgup')
		else:
			print('FastestFinger')


(z, zz) = (input, lambda : list(map(int, z().split())))
fast = lambda : stdin.readline().strip()
zzz = lambda : [int(i) for i in stdin.readline().split()]
(szz, graph, mod, szzz) = (lambda : sorted(zz()), {}, 10 ** 9 + 7, lambda : sorted(zzz()))
from string import *
from re import *
from collections import *
from queue import *
from sys import *
from collections import *
from math import *
from heapq import *
from itertools import *
from bisect import *
from collections import Counter as cc
from math import factorial as f
from bisect import bisect as bs
from bisect import bisect_left as bsl
from itertools import accumulate as ac

def lcd(xnum1, xnum2):
	return xnum1 * xnum2 // gcd(xnum1, xnum2)

def prime(x):
	p = ceil(x ** 0.5) + 1
	for i in range(2, p):
		if x % i == 0 and x != 2 or x == 0:
			return 0
	return 1

def dfs(u, visit, graph):
	visit[u] = True
	for i in graph[u]:
		if not visit[i]:
			dfs(i, visit, graph)
num = int(z())
for _ in range(num):
	n = int(z())
	if n == 1 or int(log2(n) == ceil(log2(n)) and n > 2) or (n % 2 == 0 and prime(n // 2) and (n > 2)):
		print('FastestFinger')
		continue
	print('Ashishgup')


import sys
sys.setrecursionlimit(10 ** 5)
int1 = lambda x: int(x) - 1
p2D = lambda x: print(*x, sep='\n')

def II():
	return int(sys.stdin.readline())

def MI():
	return map(int, sys.stdin.readline().split())

def LI():
	return list(map(int, sys.stdin.readline().split()))

def LLI(rows_number):
	return [LI() for _ in range(rows_number)]

def SI():
	return sys.stdin.readline()[:-1]

def isprime(a):
	if a < 2:
		return False
	if a < 4:
		return True
	if a % 2 == 0:
		return False
	for d in range(3, a + 5, 2):
		if d ** 2 > a:
			return True
		if a % d == 0:
			return False

def isbeki(a):
	k = a.bit_length() - 1
	return 1 << k == a

def main():
	for _ in range(II()):
		n = II()
		if n == 1:
			print('FastestFinger')
			continue
		if n == 2:
			print('Ashishgup')
			continue
		if n % 2 == 0 and (isbeki(n) or isprime(n // 2)):
			print('FastestFinger')
		else:
			print('Ashishgup')
main()


first = 'Ashishgup'
second = 'FastestFinger'

def cal(x):
	i = 2
	ret = []
	while i * i <= x:
		if x % i == 0:
			cnt = 0
			while x % i == 0:
				cnt += 1
				x //= i
			ret.append((i, cnt))
		i += 1
	if x > 1:
		ret.append((x, 1))
	return ret

def solve():
	n = int(input())
	if n == 1:
		print(second)
		return
	if n == 2 or n % 2 == 1:
		print(first)
		return
	d = cal(n)
	if len(d) == 1:
		print(second)
		return
	cnt = 0
	if d[0][1] == 1:
		for i in range(1, len(d)):
			cnt += d[i][1]
		if cnt > 1:
			print(first)
		else:
			print(second)
	else:
		print(first)
for _ in range(int(input())):
	solve()


import bisect

def check_prime(n):
	if n == 1:
		return False
	for i in range(2, min(50000, n)):
		if n % i == 0:
			return False
	return True
power = [2 ** i for i in range(2, 31)]
for _ in range(int(input())):
	n = int(input())
	find = bisect.bisect_left(power, n)
	if power[find] == n:
		ans = True
	else:
		ans = False
	if n == 1 or ans or (n % 2 == 0 and check_prime(n // 2)):
		print('FastestFinger')
	else:
		print('Ashishgup')


from sys import stdin, gettrace
if gettrace():
	inputi = input
else:

	def input():
		return next(stdin)[:-1]

	def inputi():
		return stdin.buffer.readline()

def main():

	def solve():
		n = int(input())
		if n == 1:
			print('FastestFinger')
			return
		if n == 2:
			print('Ashishgup')
			return
		if n % 2 == 1:
			print('Ashishgup')
			return
		tc = 0
		while n % 2 == 0:
			tc += 1
			n = n // 2
		if n == 1:
			print('FastestFinger')
			return
		if tc > 1:
			print('Ashishgup')
			return
		i = 3
		while i * i <= n:
			if n % i == 0:
				print('Ashishgup')
				return
			i += 2
		print('FastestFinger')
	t = int(inputi())
	for _ in range(t):
		solve()
main()


import sys
import random
from math import *

def input():
	return sys.stdin.readline().strip()

def iinput():
	return int(input())

def finput():
	return float(input())

def tinput():
	return input().split()

def linput():
	return list(input())

def rinput():
	return map(int, tinput())

def fiinput():
	return map(float, tinput())

def rlinput():
	return list(map(int, input().split()))

def trinput():
	return tuple(rinput())

def srlinput():
	return sorted(list(map(int, input().split())))

def YESNO(fl):
	if fl:
		print('NO')
	else:
		print('YES')

def main():

	def pro(n):
		i = 2
		while i * i <= n:
			if n % i == 0:
				return False
			i += 1
		return True
	n = iinput()
	fl = n == 1
	if n % 2 == 0 and (not fl):
		k = 0
		while n % 2 == 0:
			n //= 2
			k += 1
		if n == 1:
			if k != 1:
				fl = 1
		elif k == 1:
			if pro(n):
				fl = 1
	if fl:
		print('FastestFinger')
	else:
		print('Ashishgup')
for inytd in range(iinput()):
	main()


import math
for _ in range(int(input())):
	p = []
	l = []
	n = int(input())
	k = n
	c = 0
	while n % 2 == 0:
		n = n // 2
		c = c + 1
		l.append(2)
	for i in range(3, int(math.sqrt(n)) + 1, 2):
		if n % i == 0:
			p.append(i)
			n = n // i
	if n > 2:
		p.append(n)
	if k == 1:
		print('FastestFinger')
	elif k % 2 != 0:
		print('Ashishgup')
	elif len(l) == 1:
		if len(p) == 0:
			print('Ashishgup')
		elif len(p) == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')
	elif len(l) > 1 and len(p) == 0:
		print('FastestFinger')
	else:
		print('Ashishgup')


import math

def factors(n):
	lis = []
	i = 2
	if n % 2 == 1:
		lis.append(n)
	a = math.sqrt(n)
	while i <= a:
		if n % i == 0:
			if i == a:
				if a % 2 == 1:
					lis.append(a)
			else:
				if i % 2 == 1:
					lis.append(i)
				if n // i % 2 == 1:
					lis.append(n // i)
		i += 1
	return lis
t = int(input())
for i in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 == 1:
		print('Ashishgup')
	else:
		lis = factors(n)
		if len(lis) == 0:
			if n == 2:
				print('Ashishgup')
			else:
				print('FastestFinger')
		elif n // max(lis) != 2:
			print('Ashishgup')
		elif len(lis) == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')


from collections import defaultdict as dd
import math
import sys
input = sys.stdin.readline

def nn():
	return int(input())

def li():
	return list(input())

def mi():
	return map(int, input().split())

def lm():
	return list(map(int, input().split()))
q = nn()
for _ in range(q):
	n = nn()
	if n == 1:
		print('FastestFinger')
		continue
	if n == 2:
		print('Ashishgup')
		continue
	if n % 2 == 1:
		print('Ashishgup')
	else:
		ednum = 0
		oddnum = 0
		d = 3
		while n % 2 == 0:
			n = n // 2
			ednum += 1
		if n == 1:
			print('FastestFinger')
		else:
			while d * d <= n:
				while n % d == 0:
					n = n // d
					oddnum += 1
				d += 1
			if ednum > 1 or oddnum > 0:
				print('Ashishgup')
			else:
				print('FastestFinger')


from math import sqrt
pows2 = {2 ** i for i in range(2, 31)}

def is_prime(a):
	return not any(filter(lambda x: a % x == 0, range(3, int(sqrt(a)) + 1, 2)))
for _ in range(int(input())):
	n = int(input())
	if n == 1 or n in pows2:
		print('FastestFinger')
	elif any([n == 2, n % 2 == 1, n % 4 == 0]):
		print('Ashishgup')
	else:
		print('FastestFinger' if is_prime(n // 2) else 'Ashishgup')


import math
rr = lambda : input()
rri = lambda : int(input())
rrm = lambda : list(map(int, input().split()))
INF = float('inf')

def solve(n):
	orig = n
	A = 'Ashishgup'
	B = 'FastestFinger'
	if n == 1:
		return B
	elif n == 2:
		return A
	elif n & 1:
		return A
	leftover = 1
	while not n & 1:
		n //= 2
		leftover *= 2
	for i in range(3, int(math.sqrt(n) + 1), 2):
		if n % i == 0:
			return A
	if n == 1:
		return B
	elif leftover == 2:
		return B
	else:
		return A
t = rri()
for _ in range(t):
	n = rri()
	print(solve(n))


import math

def primeFactors(n):
	arr = []
	even = 0
	odd = 0
	while n % 2 == 0:
		n = n / 2
		even += 1
	for i in range(3, int(math.sqrt(n)) + 1, 2):
		while n % i == 0:
			arr.append(i)
			n = n / i
			odd += 1
	if n > 2:
		odd += 1
	return (even, odd)
t = int(input())
for i in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 == 1 or n == 2:
		print('Ashishgup')
	else:
		(even, odd) = primeFactors(n)
		if odd == 0 or (even == 1 and odd == 1):
			print('FastestFinger')
		else:
			print('Ashishgup')


def is_prime(n):
	if n == 1:
		return False
	i = 2
	while i * i <= n:
		if n % i == 0:
			return False
		i += 1
	return True
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	if n % 2 == 1 or n == 2:
		print('Ashishgup')
	elif bin(n)[2:].count('1') == 1:
		print('FastestFinger')
	elif not is_prime(n // 2):
		print('Ashishgup')
	else:
		print('FastestFinger')


import os
import sys
if os.path.exists('/mnt/c/Users/Square/square/codeforces'):
	f = iter(open('C.txt').readlines())

	def input():
		return next(f).strip()
else:
	input = lambda : sys.stdin.readline().strip()
fprint = lambda *args: print(*args, flush=True)

def is_power_two(x):
	while x % 2 == 0:
		x //= 2
	return x == 1

def primes(n):
	A = [1] * (n + 1)
	A[0] = A[1] = 1
	primes = []
	lenA = len(A)
	for i in range(2, lenA):
		if A[i] == 1:
			primes.append(i)
		for j in range(i * 2, lenA, i):
			A[j] = 0
	return primes
ps = primes(25000)
gamers = ['FastestFinger', 'Ashishgup']
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print(gamers[0])
	elif n == 2:
		print(gamers[1])
	elif n % 2 == 1:
		print(gamers[1])
	elif is_power_two(n):
		print(gamers[0])
	elif n % 4 == 0:
		print(gamers[1])
	else:
		n //= 2
		divisors = []
		for i in ps:
			while n % i == 0:
				n //= i
				divisors.append(i)
		if n > 1:
			divisors.append(n)
		if len(divisors) == 1:
			print(gamers[0])
		else:
			print(gamers[1])


import math
for _ in range(int(input())):
	n = int(input())
	count = 0
	if n == 1:
		print('FastestFinger')
		continue
	elif n % 2 == 1 or n == 2:
		print('Ashishgup')
		continue
	p = n
	even = 0
	odd = 0
	while n % 2 == 0:
		n = n // 2
		even += 1
	for i in range(3, int(math.sqrt(p)) + 1, 2):
		while n % i == 0:
			n = n // i
			odd += 1
	if n > 1:
		odd += 1
	if pow(2, even) == p:
		print('FastestFinger')
	elif even > 1 and odd >= 1:
		print('Ashishgup')
	elif even == 1 and odd > 1:
		print('Ashishgup')
	elif even == 1 and odd == 1:
		print('FastestFinger')


def IsPrime(dig):
	res = True
	i = 2
	while i * i <= dig:
		if dig % i == 0:
			res = False
			break
		i += 1
	return res
t = int(input())
while t > 0:
	t -= 1
	x = int(input())
	if x == 1:
		print('FastestFinger')
		continue
	if x == 2:
		print('Ashishgup')
		continue
	temp = x
	len = 0
	while temp % 2 == 0:
		temp /= 2
		len += 1
	if len == 0:
		print('Ashishgup')
		continue
	if len == 1:
		if IsPrime(x / 2) == True:
			print('FastestFinger')
		else:
			print('Ashishgup')
		continue
	if temp == 1:
		print('FastestFinger')
	else:
		print('Ashishgup')


t = int(input())
from math import *

def primes(n):
	count = 0
	while n % 2 == 0:
		n = n // 2
		count += 1
	px = 0
	for ip in range(3, ceil(sqrt(n)) + 1, 2):
		while n % ip == 0:
			px += 1
			n = n // ip
	if n > 1:
		px += 1
	if px == 0:
		return False
	if count == 1 and px > 1:
		return True
	if count == 1 and px == 1:
		return False
	if count > 1 and px == 1:
		return True
	if count > 1 and px > 1:
		return True
from math import *
for xy in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 != 0:
		print('Ashishgup')
	elif primes(n):
		print('Ashishgup')
	else:
		print('FastestFinger')


from math import sqrt

def primeFactors(n):
	odd = 0
	while n % 2 == 0:
		n = n / 2
	for i in range(3, int(sqrt(n)) + 1, 2):
		while n % i == 0:
			odd += 1
			n = n / i
	if n > 2:
		odd += 1
	return odd
for _ in range(int(input())):
	n = int(input())
	nt = n
	if n == 1:
		print('FastestFinger')
		continue
	if n % 2 == 1:
		print('Ashishgup')
		continue
	odd = primeFactors(n)
	if odd == 0:
		if nt == 2:
			print('Ashishgup')
		else:
			print('FastestFinger')
	elif nt % 4 == 0:
		print('Ashishgup')
	elif odd > 1:
		print('Ashishgup')
	else:
		print('FastestFinger')


from math import log2, floor, ceil

def isPrime(n):
	if n <= 1:
		return False
	if n <= 3:
		return True
	if n % 2 == 0 or n % 3 == 0:
		return False
	i = 5
	while i * i <= n:
		if n % i == 0 or n % (i + 2) == 0:
			return False
		i = i + 6
	return True
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 == 1 or n == 2:
		print('Ashishgup')
	elif floor(log2(n)) == ceil(log2(n)):
		print('FastestFinger')
	else:
		temp = n // 2
		if temp % 2 == 0:
			print('Ashishgup')
		elif isPrime(temp):
			print('FastestFinger')
		else:
			print('Ashishgup')


def game(a):
	if a == 1:
		return 'FastestFinger'
	if a % 2 == 1 or a == 2:
		return 'Ashishgup'
	for i in range(3, int(a ** 0.5) + 1):
		if a % i == 0:
			if i % 2 == 1 or a // i % 2 == 1:
				return 'Ashishgup'
	return 'FastestFinger'
for i in range(int(input())):
	print(game(int(input())))


from sys import *
from math import *
from bisect import *
t = int(stdin.readline())
for _ in range(t):
	n = int(stdin.readline())
	if n == 1:
		print('FastestFinger')
	elif n % 2 == 1 or n == 2:
		print('Ashishgup')
	else:
		x = 4
		f = 0
		while x < n:
			if n % x == 0:
				c = n // x
				if c % 2 == 1:
					f = 1
					break
			x *= 2
		if f == 1:
			print('Ashishgup')
		else:
			c = n // 2
			for i in range(3, int(sqrt(c)) + 1):
				if c % i == 0:
					if i % 2 == 1 and c // i % 2 == 1:
						f = 1
						break
			if f == 1:
				print('Ashishgup')
			else:
				print('FastestFinger')


from math import sqrt
from collections import Counter

def primeFactors(n):
	prime = []
	while n % 2 == 0:
		prime.append(2)
		n = n / 2
	for i in range(3, int(sqrt(n)) + 1, 2):
		while n % i == 0:
			prime.append(i)
			n = n / i
	if n > 2:
		prime.append(n)
	return prime
for _ in range(int(input())):
	N = int(input())
	if N == 1:
		print('FastestFinger')
		continue
	if N & 1:
		print('Ashishgup')
	else:
		Dict = Counter(primeFactors(N))
		if Dict[2] == 1:
			if len(Dict) == 1:
				print('Ashishgup')
			elif sum(Dict.values()) == 2:
				print('FastestFinger')
			else:
				print('Ashishgup')
		elif len(Dict) == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')


import math
t = int(input())
first = 'Ashishgup'
second = 'FastestFinger'
for _ in range(t):
	n = int(input())
	if n == 1:
		print(second)
		continue
	if n == 2:
		print(first)
		continue
	if n % 2 == 0:
		l = math.log(n, 2)
		if l > 1 and l == int(l):
			print(second)
			continue
		if n % 4 != 0:
			n = n // 2
			prime = 1
			for i in range(2, min(int(math.sqrt(n) + 1), n)):
				if n % i == 0:
					prime = 0
					break
			if prime:
				print(second)
				continue
	print(first)


for _ in range(int(input())):
	a = int(input())
	if a == 1:
		print('FastestFinger')
	elif a == 2:
		print('Ashishgup')
	elif a == 3:
		print('Ashishgup')
	else:
		x = 0
		while True:
			if a % 2 == 1:
				break
			else:
				x += 1
				a //= 2
		if x == 0:
			print('Ashishgup')
		elif x > 1:
			if a == 1:
				print('FastestFinger')
			else:
				print('Ashishgup')
		else:
			is_prime = True
			for i in range(3, int(pow(a, 0.5)) + 1):
				if a % i == 0:
					is_prime = False
					break
			if is_prime:
				print('FastestFinger')
			else:
				print('Ashishgup')


import sys
import math

def II():
	return int(sys.stdin.readline())

def LI():
	return list(map(int, sys.stdin.readline().split()))

def MI():
	return map(int, sys.stdin.readline().split())

def SI():
	return sys.stdin.readline().strip()
t = II()
l = [4]
for i in range(32):
	l.append(l[-1] * 2)
for q in range(t):
	n = II()
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 == 1:
		print('Ashishgup')
	else:
		boo = False
		for i in l:
			if i > n:
				break
			if n != i and n % i == 0 and (n // i % 2 == 1):
				boo = True
				break
		if n not in l:
			n //= 2
			for i in range(2, int(n ** 0.5 + 1)):
				if n % i == 0:
					boo = True
					break
		if boo:
			print('Ashishgup')
		else:
			print('FastestFinger')


for _ in range(int(input())):
	n = int(input())
	if n == 1:
		fst = False
	elif n == 2:
		fst = True
	elif n & 1:
		fst = True
	elif n % 4 == 0:
		while n % 2 == 0:
			n //= 2
		fst = n > 1
	else:
		n //= 2
		fst = False
		for i in range(3, n // 2, 2):
			if n % i == 0:
				fst = True
				break
			elif i * i > n:
				fst = False
				break
	print('Ashishgup' if fst else 'FastestFinger')


def isprime(n):
	for i in range(2, int(1 + n ** 0.5)):
		if n % i == 0:
			return False
	return True
(ispower, r) = ({}, 1)
for i in range(35):
	r *= 2
	ispower[r] = True
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif ispower.get(n):
		print('FastestFinger')
	elif n % 2 == 1:
		print('Ashishgup')
	else:
		n = n // 2
		if n % 2 == 0:
			print('Ashishgup')
		elif isprime(n):
			print('FastestFinger')
		else:
			print('Ashishgup')


T = int(input())
from collections import Counter

def pf(n):
	a = []
	while n % 2 == 0:
		a.append(2)
		n //= 2
	f = 3
	while f * f <= n:
		if n % f == 0:
			a.append(f)
			n //= f
		else:
			f += 2
	if n != 1:
		a.append(n)
	return a
for _ in range(T):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 == 1:
		print('Ashishgup')
	else:
		c = pf(n)
		b = Counter(c)
		ma = len(c) - b[2]
		if b[2] == 1:
			if ma == 1:
				print('FastestFinger')
			else:
				print('Ashishgup')
		elif ma == 0:
			print('FastestFinger')
		else:
			print('Ashishgup')


def primes(n):
	onlytwo = True
	primfac = []
	d = 2
	while d * d <= n:
		while n % d == 0:
			if d != 2:
				onlytwo = False
			primfac.append(d)
			n //= d
		d += 1
	if n > 1:
		if n != 2:
			onlytwo = False
		primfac.append(n)
	return (primfac, onlytwo)

def fret(n):
	ans = ['Ashishgup', 'FastestFinger']
	b = 0
	if n == 1:
		b = 1
	elif n == 2 or n % 2 == 1:
		b = 0
	else:
		(nos, onlytwo) = primes(n)
		if onlytwo:
			b = 1
		elif len(nos) > 2:
			b = 0
		else:
			b = 1
	return ans[b]
for _ in range(int(input())):
	n = int(input())
	print(fret(n))


def IsPrime(n):
	if n == 1:
		return False
	if n == 2:
		return True
	if n % 2 == 0:
		return False
	d = 3
	while d * d <= n:
		if n % d == 0:
			return False
		d += 2
	return True
t = int(input())
for i in range(t):
	n = int(input())
	org = n
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 == 0:
		temp = 1
		while n % 2 == 0:
			temp *= 2
			n //= 2
		if temp == 2:
			if IsPrime(n):
				print('FastestFinger')
			else:
				print('Ashishgup')
		elif n == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')
	else:
		print('Ashishgup')


import sys, math
input = sys.stdin.readline

def cko(v):
	for i in range(3, math.ceil(v ** 0.5) + 1, 2):
		if v % i == 0:
			return False
	return True
T = int(input())
for _ in range(T):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 != 0 or n == 2:
		print('Ashishgup')
	else:
		v = math.log2(n)
		if math.floor(v) == math.ceil(v):
			print('FastestFinger')
		else:
			v = n / 2
			if v % 2 != 0 and math.floor(v) == math.ceil(v) and (cko(v) == True):
				print('FastestFinger')
			else:
				print('Ashishgup')


def test_integer_for_prime(p):
	if p == 1:
		return 0
	probes = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47]
	if p in probes:
		return 1
	if any([p % a == 0 for a in probes]):
		return 0
	(k, q) = (0, p - 1)
	while not q & 1:
		q >>= 1
		k += 1
	for a in probes:
		a_raised_to_q = pow(a, q, p)
		if a_raised_to_q == 1:
			continue
		if a_raised_to_q == p - 1 and k > 0:
			continue
		a_raised_to_jq = a_raised_to_q
		primeflag = 0
		for j in range(k - 1):
			a_raised_to_jq = pow(a_raised_to_jq, 2, p)
			if a_raised_to_jq == p - 1:
				primeflag = 1
				break
		if not primeflag:
			return 0
	probability_of_prime = 1 - 1.0 / 4 ** len(probes)
	return probability_of_prime
pow2 = [2 ** i for i in range(1, 30)]

def ispower(n):
	return n in pow2
t = int(input())
for test in range(t):
	n = int(input())
	p2 = 'FastestFinger'
	p1 = 'Ashishgup'
	if n == 1:
		print(p2)
	elif n == 2:
		print(p1)
	elif n % 4 == 2:
		if test_integer_for_prime(n // 2) > 0.5:
			print(p2)
		else:
			print(p1)
	elif n % 2 == 1:
		print(p1)
	elif ispower(n):
		print(p2)
	else:
		print(p1)


import math

def isPowerOfTwo(x):
	return x and (not x & x - 1)

def primeFactors(n):
	lt = []
	two = 0
	while n % 2 == 0:
		n = n // 2
		two += 1
	for i in range(3, int(math.sqrt(n)) + 1, 2):
		while n % i == 0:
			lt.append(i)
			n = n // i
	if n > 2:
		lt.append(n)
	return (lt, two)
t = int(input())
while t != 0:
	t -= 1
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 != 0 or n == 2:
		print('Ashishgup')
	elif isPowerOfTwo(n):
		print('FastestFinger')
	else:
		(p, two) = primeFactors(n)
		if two > 1:
			print('Ashishgup')
		elif len(p) == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')


import math
t = int(input())
for i in range(t):
	n = int(input())
	if n == 1 or n == 4 or n == 6:
		print('FastestFinger')
		continue
	if n == 2 or n == 3 or n == 5:
		print('Ashishgup')
		continue
	if n % 2 != 0:
		print('Ashishgup')
	else:
		win = False
		for j in range(3, int(n ** 0.5) + 1):
			if j % 2 != 0 and n % j == 0:
				win = True
				break
			if n % j == 0 and n / j % 2 != 0:
				win = True
				break
		if win == True:
			print('Ashishgup')
		else:
			print('FastestFinger')


import sys
INF = 10 ** 20
MOD = 10 ** 9 + 7
I = lambda : list(map(int, input().split()))
from math import gcd
from math import ceil
from collections import defaultdict as dd, Counter
from bisect import bisect_left as bl, bisect_right as br

def solve():
	(n,) = I()
	f = 'FastestFinger'
	a = 'Ashishgup'
	if n == 1:
		print(f)
		return
	if n == 2:
		print(a)
		return
	if not n & n - 1:
		print(f)
		return
	lala = 0
	if n % 2:
		print(a)
		return
	count = 0
	while n % 2 == 0:
		n //= 2
		lala += 1
	for i in range(3, int(n ** 0.5) + 10, 2):
		while n % i == 0:
			count += 1
			n //= i
	if n > 1:
		count += 1
	if lala == 1 and count == 1:
		print(f)
		return
	if count % 2:
		print(a)
	else:
		print(a)
(t,) = I()
while t:
	t -= 1
	solve()


from sys import stdin, stdout
import math
import heapq
t = 1

def aint():
	return int(input().strip())

def lint():
	return list(map(int, input().split()))

def fint():
	return list(map(int, stdin.readline().split()))

def main():
	n = aint()
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 == 1:
		print('Ashishgup')
	else:
		div = []
		odddivcount = 0
		twocount = 0
		while n % 2 == 0:
			n //= 2
			twocount += 1
		for i in range(3, 40000):
			if n % i == 0:
				div.append(i)
				while n % i == 0:
					n //= i
					odddivcount += 1
		if n > 1:
			odddivcount += 1
		if odddivcount == 0:
			print('FastestFinger')
		elif odddivcount == 1:
			if twocount == 1:
				print('FastestFinger')
			else:
				print('Ashishgup')
		else:
			print('Ashishgup')
t = int(input())
for i in range(t):
	main()


PRIME = {2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131, 137, 139, 149, 151, 157, 163, 167, 173, 179, 181, 191, 193, 197, 199, 211, 223, 227, 229, 233, 239, 241, 251, 257, 263, 269, 271, 277, 281, 283, 293, 307, 311, 313, 317, 331, 337, 347, 349, 353, 359, 367, 373, 379, 383, 389, 397, 401, 409, 419, 421, 431, 433, 439, 443, 449, 457, 461, 463, 467, 479, 487, 491, 499, 503, 509, 521, 523, 541, 547, 557, 563, 569, 571, 577, 587, 593, 599, 601, 607, 613, 617, 619, 631, 641, 643, 647, 653, 659, 661, 673, 677, 683, 691, 701, 709, 719, 727, 733, 739, 743, 751, 757, 761, 769, 773, 787, 797, 809, 811, 821, 823, 827, 829, 839, 853, 857, 859, 863, 877, 881, 883, 887, 907, 911, 919, 929, 937, 941, 947, 953, 967, 971, 977, 983, 991, 997}
PRIME_MAX = max(PRIME)

def is_prime(n):
	if n == 1:
		return True
	if n in PRIME:
		return True
	if n < PRIME_MAX:
		return False
	for i in PRIME:
		if n % i == 0:
			return False
	n2 = int(n ** 0.5)
	for i in range(PRIME_MAX + 2, n2 + 1, 2):
		if n % i == 0:
			return False
	return True

def test(n):
	b = bin(n)[2:]
	k = 0
	while b[-(k + 1)] == '0':
		k += 1
	l = len(b)
	if k == 0:
		if n == 1:
			return False
		return True
	elif k == 1:
		if n == 2:
			return True
		return not is_prime(n // (1 << k))
	elif l == k + 1:
		return False
	else:
		return True

def main():
	n = int(input())
	return test(n)
for _ in range(int(input())):
	print('Ashishgup' if main() else 'FastestFinger')


def isPrime(x):
	i = 3
	while i * i <= x:
		if x % i == 0:
			return False
		i += 1
	return True
t = int(input())
while t > 0:
	n = int(input())
	num = n
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 == 1:
		print('Ashishgup')
	else:
		while n % 2 == 0:
			n = n // 2
		if n == 1:
			print('FastestFinger')
		elif num // n == 2:
			if isPrime(n):
				print('FastestFinger')
			else:
				print('Ashishgup')
		else:
			print('Ashishgup')
	t -= 1


import math
t = int(input())
for _ in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
		continue
	if n % 2 != 0:
		print('Ashishgup')
		continue
	if n == 2:
		print('Ashishgup')
		continue
	x = n
	c = 0
	while x % 2 == 0:
		c += 1
		x /= 2
	if x == 1:
		print('FastestFinger')
		continue
	elif n % 4 == 0:
		print('Ashishgup')
	else:
		o = 0
		s = []
		k = n // 2
		for i in range(3, int(math.sqrt(n)) + 1, 2):
			while k % i == 0:
				o += 1
				s.append(i)
				k /= i
		if k > 2:
			o += 1
			s.append(k)
		if o > 1:
			print('Ashishgup')
		else:
			print('FastestFinger')


def prog():
	powers = set()
	curr = 1
	for i in range(1, 33):
		curr = curr << 1
		powers.add(curr)
	for _ in range(int(input())):
		n = int(input())
		if n == 1:
			print('FastestFinger')
		elif n == 2:
			print('Ashishgup')
		elif n % 2 == 1:
			print('Ashishgup')
		elif n in powers:
			print('FastestFinger')
		elif n % 4 == 0:
			print('Ashishgup')
		else:
			n //= 2
			total = 0
			for i in range(3, int(n ** 0.5) + 1, 2):
				if n % i == 0:
					while n % i == 0:
						total += 1
						n //= i
			if n > 1:
				total += 1
			if total == 1:
				print('FastestFinger')
			else:
				print('Ashishgup')
prog()


import os
import sys
from io import BytesIO, IOBase
BUFSIZE = 8192

class FastIO(IOBase):
	newlines = 0

	def __init__(self, file):
		self._fd = file.fileno()
		self.buffer = BytesIO()
		self.writable = 'x' in file.mode or 'r' not in file.mode
		self.write = self.buffer.write if self.writable else None

	def read(self):
		while True:
			b = os.read(self._fd, max(os.fstat(self._fd).st_size, BUFSIZE))
			if not b:
				break
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines = 0
		return self.buffer.read()

	def readline(self):
		while self.newlines == 0:
			b = os.read(self._fd, max(os.fstat(self._fd).st_size, BUFSIZE))
			self.newlines = b.count(b'\n') + (not b)
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines -= 1
		return self.buffer.readline()

	def flush(self):
		if self.writable:
			os.write(self._fd, self.buffer.getvalue())
			(self.buffer.truncate(0), self.buffer.seek(0))

class IOWrapper(IOBase):

	def __init__(self, file):
		self.buffer = FastIO(file)
		self.flush = self.buffer.flush
		self.writable = self.buffer.writable
		self.write = lambda s: self.buffer.write(s.encode('ascii'))
		self.read = lambda : self.buffer.read().decode('ascii')
		self.readline = lambda : self.buffer.readline().decode('ascii')
(sys.stdin, sys.stdout) = (IOWrapper(sys.stdin), IOWrapper(sys.stdout))
input = lambda : sys.stdin.readline().rstrip('\r\n')

def fact(x):
	if x == 0:
		return 1
	else:
		return x * fact(x - 1)

def lower_bound(li, num):
	answer = -1
	start = 0
	end = len(li) - 1
	while start <= end:
		middle = (end + start) // 2
		if li[middle] >= num:
			answer = middle
			end = middle - 1
		else:
			start = middle + 1
	return answer

def upper_bound(li, num):
	answer = -1
	start = 0
	end = len(li) - 1
	while start <= end:
		middle = (end + start) // 2
		if li[middle] <= num:
			answer = middle
			start = middle + 1
		else:
			end = middle - 1
	return answer

def abs(x):
	return x if x >= 0 else -x

def binary_search(li, val, lb, ub):
	ans = 0
	while lb <= ub:
		mid = (lb + ub) // 2
		if li[mid] > val:
			ub = mid - 1
		elif val > li[mid]:
			lb = mid + 1
		else:
			ans = 1
			break
	return ans

def sieve_of_eratosthenes(n):
	ans = []
	arr = [1] * (n + 1)
	(arr[0], arr[1], i) = (0, 0, 2)
	while i * i <= n:
		if arr[i] == 1:
			j = i + i
			while j <= n:
				arr[j] = 0
				j += i
		i += 1
	for k in range(n):
		if arr[k] == 1:
			ans.append(k)
	return ans

def nc2(x):
	if x == 1:
		return 0
	else:
		return x * (x - 1) // 2

def kadane(x):
	sum_so_far = 0
	current_sum = 0
	for i in x:
		current_sum += i
		if current_sum < 0:
			current_sum = 0
		else:
			sum_so_far = max(sum_so_far, current_sum)
	return sum_so_far
from math import *
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		ans = 1
	elif n == 2 or n & 1 == 1:
		ans = 0
	else:
		(even, odd) = (0, 0)
		while n % 2 == 0:
			n //= 2
			even += 1
		i = 3
		while i * i <= n:
			if n % i == 0:
				while n % i == 0:
					n //= i
					odd += 1
			i += 2
		if n > 2:
			odd += 1
		if odd == 0 or (odd == 1 and even == 1):
			ans = 1
		else:
			ans = 0
	a = ['Ashishgup', 'FastestFinger']
	print(a[ans])


import bisect
import decimal
from decimal import Decimal
import os
from collections import Counter
import bisect
from collections import defaultdict
import math
import random
import heapq
from math import sqrt
import sys
from functools import reduce, cmp_to_key
from collections import deque
import threading
from itertools import combinations
from io import BytesIO, IOBase
from itertools import accumulate
decimal.getcontext().prec = 46

def primeFactors(n):
	prime = set()
	while n % 2 == 0:
		prime.add(2)
		n = n // 2
	for i in range(3, int(math.sqrt(n)) + 1, 2):
		while n % i == 0:
			prime.add(i)
			n = n // i
	if n > 2:
		prime.add(n)
	return list(prime)

def getFactors(n):
	factors = []
	i = 2
	while i <= math.sqrt(n):
		if n % i == 0:
			if n // i == i:
				if i % 2 != 0:
					factors.append(i)
			else:
				if i % 2 != 0:
					factors.append(i)
				if n // i % 2 != 0:
					factors.append(n // i)
		i = i + 1
	return factors

def SieveOfEratosthenes(n):
	prime = [True for i in range(n + 1)]
	p = 2
	while p * p <= n:
		if prime[p] == True:
			for i in range(p * p, n + 1, p):
				prime[i] = False
		p += 1
	num = []
	for p in range(2, n + 1):
		if prime[p]:
			num.append(p)
	return num

def lcm(a, b):
	return a * b // math.gcd(a, b)

def sort_dict(key_value):
	return sorted(key_value.items(), key=lambda kv: (kv[1], kv[0]), reverse=True)

def list_input():
	return list(map(int, input().split()))

def num_input():
	return map(int, input().split())

def string_list():
	return list(input())

def decimalToBinary(n):
	return bin(n).replace('0b', '')

def binaryToDecimal(n):
	return int(n, 2)

def DFS(n, s, adj):
	visited = [False for i in range(n + 1)]
	stack = []
	stack.append(s)
	while len(stack):
		s = stack[-1]
		stack.pop()
		if not visited[s]:
			visited[s] = True
		for node in adj[s]:
			if not visited[node]:
				stack.append(node)

def maxSubArraySum(a, size):
	max_so_far = 0
	max_ending_here = 0
	for i in range(0, size):
		max_ending_here = max_ending_here + a[i]
		if max_ending_here < 0:
			max_ending_here = 0
		elif max_so_far < max_ending_here:
			max_so_far = max_ending_here
	return max_so_far

def findMaxGCD(arr, n):
	high = 0
	for i in range(0, n):
		high = max(high, arr[i])
	count = [0] * (high + 1)
	for i in range(0, n):
		count[arr[i]] += 1
	counter = 0
	for i in range(high, 0, -1):
		j = i
		while j <= high:
			if count[j] > 0:
				counter += count[j]
			j += i
			if counter == 2:
				return i
		counter = 0

def solve():
	n = int(input())
	if n == 1:
		print('FastestFinger')
		return
	if n == 2:
		print('Ashishgup')
		return
	if n % 2 != 0:
		print('Ashishgup')
		return
	factors = getFactors(n)
	factors.sort(reverse=True)
	for i in factors:
		num = n // i
		if num % 2 == 0 and num != 2:
			print('Ashishgup')
			return
	print('FastestFinger')
t = int(input())
for _ in range(t):
	solve()


from fractions import Fraction
import bisect
import os
import io
from collections import Counter
import bisect
from collections import defaultdict
import math
import random
import heapq as hq
from math import sqrt
import sys
from functools import reduce, cmp_to_key
from collections import deque
import threading
from itertools import combinations
from io import BytesIO, IOBase
from itertools import accumulate
from queue import Queue

def input():
	return sys.stdin.readline().strip()

def iinput():
	return int(input())

def tinput():
	return input().split()

def rinput():
	return map(int, tinput())

def rlinput():
	return list(rinput())
mod = int(1000000000.0) + 7

def factors(n):
	return set(reduce(list.__add__, ([i, n // i] for i in range(1, int(n ** 0.5) + 1) if n % i == 0)))

def primeFactors(n):
	ans = []
	while n % 2 == 0:
		ans.append(2)
		n = n / 2
	for i in range(3, int(math.sqrt(n)) + 1, 2):
		while n % i == 0:
			ans.append(i)
			n = n / i
	if n > 2:
		ans.append(n)
	return ans
t = 1
t = iinput()
for _ in range(t):
	n = iinput()
	if n == 1:
		print('FastestFinger')
		continue
	if n == 2:
		print('Ashishgup')
		continue
	if n % 2:
		print('Ashishgup')
	else:
		twos = 0
		while n % 2 == 0:
			n = n // 2
			twos += 1
		if n != 1 and twos > 1:
			print('Ashishgup')
		else:
			fact = primeFactors(n)
			left = len(fact) - fact.count(2)
			if left < 2:
				print('FastestFinger')
			else:
				print('Ashishgup')


def cnt_odd(x):
	div = []
	i = 3
	while i * i <= x:
		if x % i == 0:
			while x % i == 0:
				x = x // i
				div.append(i)
		i = i + 2
	while x % 2 == 0:
		x = x / 2
	if x > 1:
		div.append(x)
	return div
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 != 0:
		print('Ashishgup')
	elif n % 2 == 0:
		temp = n
		odd = cnt_odd(n)
		if len(odd) == 0:
			print('FastestFinger')
		elif len(odd) == 1:
			if temp // odd[0] == 2:
				print('FastestFinger')
			elif temp // odd[0] > 2:
				print('Ashishgup')
		elif len(odd) > 1:
			print('Ashishgup')


import sys
from collections import deque
pprint = lambda s: print(' '.join(map(str, s)))
input = lambda : sys.stdin.readline().strip()
ipnut = input

def is_prime(n):
	i = 2
	while i ** 2 <= n:
		if n % i == 0:
			return False
		i += 1
	return True
for i in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 == 0:
		k = 0
		while n % 2 == 0:
			n //= 2
			k += 1
		if n == 1:
			if k == 1:
				print('Ashishgup')
			else:
				print('FastestFinger')
		elif k == 1:
			if is_prime(n):
				print('FastestFinger')
			else:
				print('Ashishgup')
		else:
			print('Ashishgup')
	else:
		print('Ashishgup')


class Sieve:

	def __init__(self, n=10 ** 7):
		self.N = n
		s = [-1] * n
		for i in range(2, int(n ** 0.5) + 1):
			if s[i] != -1:
				continue
			for j in range(i, n, i):
				if j > i:
					s[j] = i
		self.s = s
		self.PRIMES = self.primes()

	def primes(self):
		return [i for (i, e) in enumerate(self.s) if e == -1 and i >= 2]

	def fastfactorize(self, n):
		assert n <= self.N
		ret = []
		while self.s[n] != -1:
			ret += [self.s[n]]
			n = n // self.s[n]
		ret += [n]
		return ret

	def factorize(self, n):
		if n < self.N:
			return self.fastfactorize(n)
		for p in self.PRIMES:
			if n % p == 0:
				return [p] + self.factorize(n // p)
		return [n]
sieve = Sieve(10 ** 5)
T = int(input())

def largest2(N):
	for i in range(1, 1000000):
		if N % 2 ** i != 0:
			return i - 1

def ans(N):
	k = largest2(N)
	if k >= 2:
		odd = N // 2 ** k
		if odd > 1:
			return 'Ashishgup'
		else:
			return 'FastestFinger'
	if k == 1:
		odd = N // 2
		factors = sieve.factorize(odd)
		if factors == [1]:
			return 'Ashishgup'
		if len(factors) == 1:
			return 'FastestFinger'
		else:
			return 'Ashishgup'
		return '?'
	odd = N
	if odd > 1:
		return 'Ashishgup'
	else:
		return 'FastestFinger'
for _ in range(T):
	N = int(input())
	print(ans(N))


t = int(input())

def isPrime(n):
	if n <= 1:
		return False
	if n <= 3:
		return True
	if n % 2 == 0 or n % 3 == 0:
		return False
	i = 5
	while i * i <= n:
		if n % i == 0 or n % (i + 2) == 0:
			return False
		i = i + 6
	return True
for _ in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 == 1:
		print('Ashishgup')
	elif n == 2:
		print('Ashishgup')
	else:
		cnt = 0
		flag = 0
		while n > 1:
			if n % 2 == 0:
				cnt += 1
			n = int(n / 2)
			if n % 2 == 1 and n > 1:
				flag = 1
				break
		if flag and cnt > 1:
			print('Ashishgup')
		elif cnt == 1 and flag == 1:
			if isPrime(n):
				print('FastestFinger')
			else:
				print('Ashishgup')
		else:
			print('FastestFinger')


import sys
input = sys.stdin.readline
t = int(input())
for _ in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 == 1:
		print('Ashishgup')
	else:
		twos = 0
		while n % 2 == 0:
			n //= 2
			twos += 1
		odd_primes = 0
		MAX = int(n ** 0.5) + 1
		d = 3
		while n > 1 and d <= MAX:
			while n % d == 0:
				odd_primes += 1
				n //= d
			d += 1
		if n > 1:
			odd_primes += 1
		if twos == 1:
			if odd_primes == 0 or odd_primes > 1:
				print('Ashishgup')
			else:
				print('FastestFinger')
		elif odd_primes > 0:
			print('Ashishgup')
		else:
			print('FastestFinger')


from collections import Counter as C, defaultdict as D, deque as Q
from operator import itemgetter as I
from itertools import product as P
from bisect import bisect_left as BL, bisect_right as BR
from heapq import heappush as HPUSH, heappop as HPOP
from math import floor as MF, ceil as MC, gcd as MG, factorial as F, sqrt as SQRT

def player1():
	print('Ashishgup')

def player2():
	print('FastestFinger')

def isPrime(n):
	for i in range(2, MC(SQRT(n)) + 1):
		if n % i == 0:
			return False
	return True

def main():
	for _ in range(int(input())):
		n = int(input())
		if n == 1:
			player2()
			continue
		if n == 2:
			player1()
			continue
		if n & 1:
			player1()
			continue
		if isPrime(n // 2) or n & n - 1 == 0:
			player2()
		else:
			player1()
main()


z = input
mod = 10 ** 9 + 7
from collections import *
from queue import *
from sys import *
from collections import *
from math import *
from heapq import *
from itertools import *
from bisect import *
from collections import Counter as cc
from math import factorial as f

def lcd(xnum1, xnum2):
	return xnum1 * xnum2 // gcd(xnum1, xnum2)

def prime(x):
	p = ceil(x ** 0.5) + 1
	for i in range(2, p):
		if x % i == 0:
			return 0
	return 1
num = int(z())
for _ in range(num):
	n = int(z())

	def winner(n):
		ans = n == 1
		if n > 2 and (not n % 2):
			if not n & n - 1:
				ans = 1
			elif n % 4 and prime(n // 2):
				ans = 1
		if ans:
			return 'FastestFinger'
		return 'Ashishgup'
	print(winner(n))


import sys
input = sys.stdin.readline
import math

def ehprimo(n):
	for i in range(2, min(n, 50000)):
		if n % i == 0:
			return False
	return True

def solve():
	nu = int(input())
	if nu == 1:
		perdeu = True
	else:
		perdeu = False
	if nu > 2 and nu % 2 == 0:
		if nu & nu - 1 == 0:
			perdeu = True
		elif nu % 4 != 0 and ehprimo(nu // 2):
			perdeu = True
	if perdeu:
		print('FastestFinger')
	else:
		print('Ashishgup')
test = int(input())
while test != 0:
	solve()
	test -= 1


from collections import Counter, defaultdict, deque
import sys
input = sys.stdin.readline

def primes(n):
	i = 2
	factors = []
	while i * i <= n:
		if n % i:
			i += 1
		else:
			n //= i
			factors.append(i)
	if n > 1:
		factors.append(n)
	return factors

def solve():
	n = int(input())
	p = primes(n)
	c = 0
	t = 0
	for el in p:
		if el % 2:
			c += 1
		else:
			t += 1
	if n == 1:
		print('FastestFinger')
		return
	if n % 2:
		print('Ashishgup')
		return
	if t == 1:
		if c == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')
		return
	if c > 0:
		print('Ashishgup')
	else:
		print('FastestFinger')
tt = int(input())
for test in range(tt):
	solve()


import sys
import math
import itertools
import functools
import collections
import operator
import fileinput
import copy
ORDA = 97

def ii():
	return int(input())

def mi():
	return map(int, input().split())

def li():
	return [int(i) for i in input().split()]

def lcm(a, b):
	return abs(a * b) // math.gcd(a, b)

def revn(n):
	return str(n)[::-1]

def dd():
	return collections.defaultdict(int)

def ddl():
	return collections.defaultdict(list)

def sieve(n):
	if n < 2:
		return list()
	prime = [True for _ in range(n + 1)]
	p = 3
	while p * p <= n:
		if prime[p]:
			for i in range(p * 2, n + 1, p):
				prime[i] = False
		p += 2
	r = [2]
	for p in range(3, n + 1, 2):
		if prime[p]:
			r.append(p)
	return r

def divs(n, start=1):
	r = []
	for i in range(start, int(math.sqrt(n) + 1)):
		if n % i == 0:
			if n / i == i:
				r.append(i)
			else:
				r.extend([i, n // i])
	return r

def divn(n, primes):
	divs_number = 1
	for i in primes:
		if n == 1:
			return divs_number
		t = 1
		while n % i == 0:
			t += 1
			n //= i
		divs_number *= t

def prime(n):
	if n == 2:
		return True
	if n % 2 == 0 or n <= 1:
		return False
	sqr = int(math.sqrt(n)) + 1
	for d in range(3, sqr, 2):
		if n % d == 0:
			return False
	return True

def convn(number, base):
	newnumber = 0
	while number > 0:
		newnumber += number % base
		number //= base
	return newnumber

def cdiv(n, k):
	return n // k + (n % k != 0)

def ispal(s):
	for i in range(len(s) // 2 + 1):
		if s[i] != s[-i - 1]:
			return False
	return True
for _ in range(ii()):
	n = ii()
	if n == 1:
		print('FastestFinger')
	elif n & 1 and n != 1 or n == 2:
		print('Ashishgup')
	elif n // 2 & 1:
		if prime(n // 2):
			print('FastestFinger')
		else:
			print('Ashishgup')
	else:
		while n % 2 == 0:
			n //= 2
		if n == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')


import os
import sys
from io import BytesIO, IOBase
import threading
from math import floor
from bisect import bisect_right
from collections import deque
from math import gcd
mod = 998244353

def is_prime(x):
	for i in range(3, int(x ** 0.5) + 1, 2):
		if x % i == 0:
			return False
	return True

def main():
	for _ in range(int(input())):
		n = int(input())
		cnt = 0
		b = False
		ind = 0
		for i in range(31):
			if n == 1 << i:
				ind = i
				b = True
		if b:
			if n == 2:
				print('Ashishgup')
			else:
				print('FastestFinger')
		elif n % 2 == 0 and n % 4 != 0 and is_prime(n // 2):
			print('FastestFinger')
		else:
			print('Ashishgup')
BUFSIZE = 8192

class FastIO(IOBase):
	newlines = 0

	def __init__(self, file):
		self._fd = file.fileno()
		self.buffer = BytesIO()
		self.writable = 'x' in file.mode or 'r' not in file.mode
		self.write = self.buffer.write if self.writable else None

	def read(self):
		while True:
			b = os.read(self._fd, max(os.fstat(self._fd).st_size, BUFSIZE))
			if not b:
				break
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines = 0
		return self.buffer.read()

	def readline(self):
		while self.newlines == 0:
			b = os.read(self._fd, max(os.fstat(self._fd).st_size, BUFSIZE))
			self.newlines = b.count(b'\n') + (not b)
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines -= 1
		return self.buffer.readline()

	def flush(self):
		if self.writable:
			os.write(self._fd, self.buffer.getvalue())
			(self.buffer.truncate(0), self.buffer.seek(0))

class IOWrapper(IOBase):

	def __init__(self, file):
		self.buffer = FastIO(file)
		self.flush = self.buffer.flush
		self.writable = self.buffer.writable
		self.write = lambda s: self.buffer.write(s.encode('ascii'))
		self.read = lambda : self.buffer.read().decode('ascii')
		self.readline = lambda : self.buffer.readline().decode('ascii')
(sys.stdin, sys.stdout) = (IOWrapper(sys.stdin), IOWrapper(sys.stdout))
input = lambda : sys.stdin.readline().rstrip('\r\n')
main()


import sys
input = sys.stdin.readline
t = int(input())
d = {}

def bfs(n):
	z = int(n ** 0.5)
	temp = []
	if n == 1:
		return
	if n % 2 != 0:
		if e.get(n, 0) == 1:
			o[1] = 1
		if o.get(n, 0) == 1:
			e[1] = 1
		return
	if n % 2 == 0:
		if mark.get(n - 1, 0) == 0:
			if e.get(n, 0) == 1:
				o[n - 1] = 1
			if o.get(n, 0) == 1:
				e[n - 1] = 1
			if e.get(n - 1, 0) == 1 and o.get(n - 1, 0) == 1:
				mark[n - 1] = 1
			temp.append(n - 1)
	for i in range(2, z + 1):
		v = n // i
		if n % i == 0 and i % 2 != 0:
			if mark.get(v, 0) == 0:
				if e.get(n, 0) == 1:
					o[v] = 1
				if o.get(n, 0) == 1:
					e[v] = 1
				if e.get(v, 0) == 1 and o.get(v, 0) == 1:
					mark[v] = 1
				temp.append(v)
		if n % i == 0 and v % 2 != 0:
			if mark.get(i, 0) == 0:
				if e.get(n, 0) == 1:
					o[i] = 1
				if o.get(n, 0) == 1:
					e[i] = 1
				if e.get(i, 0) == 1 and o.get(i, 0) == 1:
					mark[i] = 1
				temp.append(i)
	for i in range(len(temp)):
		bfs(temp[i])
for t1 in range(t):
	n = int(input())
	e = {}
	o = {}
	mark = {}
	e[n] = 1
	if n == 1:
		print('FastestFinger')
	elif n % 2 != 0 or n == 2:
		print('Ashishgup')
	else:
		bfs(n)
		if o.get(1, 0) == 1:
			print('Ashishgup')
		else:
			print('FastestFinger')


import math

def tc():
	n = int(input())
	x = n
	if n == 1:
		return 'FastestFinger'
	elif n == 2:
		return 'Ashishgup'
	twos = 0
	while n % 2 == 0:
		n //= 2
		twos += 1
	if n == 1:
		return 'FastestFinger'
	if twos != 1:
		return 'Ashishgup'
	facts = 0
	while n > 1:
		for i in range(3, int(math.sqrt(n)) + 1, 2):
			if n % i == 0:
				facts += 1
				n //= i
				break
		else:
			facts += 1
			break
	if facts > 1:
		return 'Ashishgup'
	else:
		return 'FastestFinger'
T = int(input())
for _ in range(T):
	ans = tc()
	print(ans)


def factors(n):
	result = []
	for i in range(1, int(n ** 0.5) + 1):
		if n % i == 0:
			result += [i, n // i]
	return list(set(result))

def play(n):
	f = factors(n)
	f.sort()
	try:
		f.remove(1)
		f.remove(n)
	except:
		pass
	f = list(filter(lambda x: x % 2 != 0, f))
	if n == 1:
		return False
	if n == 2:
		return not play(n - 1)
	if n % 2:
		return not play(n // n)
	if not f:
		return not play(n - 1)
	for x in f:
		if not play(n // x):
			return True
	return False
for testcase in range(int(input())):
	n = int(input())
	if play(n):
		print('Ashishgup')
	else:
		print('FastestFinger')


from math import sqrt
from sys import stdin
input = stdin.readline

def isprime(n):
	for i in range(2, int(sqrt(n)) + 2):
		if n % i == 0:
			return False
	return True

def main():
	test = int(input())
	for _ in range(test):
		n = int(input())
		a = 'Ashishgup'
		b = 'FastestFinger'
		if n == 1:
			print(b)
		elif n == 2:
			print(a)
		elif n % 2 == 1:
			print(a)
		else:
			c = 0
			i = 1
			val = 1
			while i <= 32:
				if n & val != 0:
					c += 1
				val <<= 1
				i += 1
			if c == 1 or isprime(n // 2):
				print(b)
			else:
				print(a)
main()


def solve(n):
	if n == 1:
		return False
	if n == 2:
		return True
	if n % 2 == 1:
		return True
	d = n
	while d % 2 == 0:
		d //= 2
	if d == 1:
		return False
	elif n // d == 2:
		p = 1
		i = 2
		while i * i <= d:
			if d % i == 0:
				p = i
				break
			i += 1
		if p == 1:
			return False
		else:
			return True
	else:
		return True
t = int(input())
for _ in range(t):
	n = int(input())
	if solve(n):
		print('Ashishgup')
	else:
		print('FastestFinger')


import math
for case in range(int(input())):
	n = int(input())
	temp = n
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 == 1:
		print('Ashishgup')
	else:
		odd_factors = 0
		while n % 2 == 0:
			n //= 2
		for i in range(3, int(math.sqrt(n)) + 1, 2):
			while n % i == 0:
				odd_factors += 1
				n //= i
		if n > 1 and n % 2 == 1:
			odd_factors += 1
		if odd_factors == 0:
			print('FastestFinger')
		elif odd_factors > 1:
			print('Ashishgup')
		elif temp % 4 == 0:
			print('Ashishgup')
		else:
			print('FastestFinger')


import os
import sys
from io import BytesIO, IOBase
import math
BUFSIZE = 8192

class FastIO(IOBase):
	newlines = 0

	def __init__(self, file):
		self._fd = file.fileno()
		self.buffer = BytesIO()
		self.writable = 'x' in file.mode or 'r' not in file.mode
		self.write = self.buffer.write if self.writable else None

	def read(self):
		while True:
			b = os.read(self._fd, max(os.fstat(self._fd).st_size, BUFSIZE))
			if not b:
				break
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines = 0
		return self.buffer.read()

	def readline(self):
		while self.newlines == 0:
			b = os.read(self._fd, max(os.fstat(self._fd).st_size, BUFSIZE))
			self.newlines = b.count(b'\n') + (not b)
			ptr = self.buffer.tell()
			(self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr))
		self.newlines -= 1
		return self.buffer.readline()

	def flush(self):
		if self.writable:
			os.write(self._fd, self.buffer.getvalue())
			(self.buffer.truncate(0), self.buffer.seek(0))

class IOWrapper(IOBase):

	def __init__(self, file):
		self.buffer = FastIO(file)
		self.flush = self.buffer.flush
		self.writable = self.buffer.writable
		self.write = lambda s: self.buffer.write(s.encode('ascii'))
		self.read = lambda : self.buffer.read().decode('ascii')
		self.readline = lambda : self.buffer.readline().decode('ascii')
(sys.stdin, sys.stdout) = (IOWrapper(sys.stdin), IOWrapper(sys.stdout))
input = lambda : sys.stdin.readline().rstrip('\r\n')
for _ in range(int(input())):
	n = int(input())
	num = n
	s1 = 'Ashishgup'
	s2 = 'FastestFinger'
	if n == 1:
		print(s2)
		continue
	elif n % 2 == 1:
		print(s1)
		continue
	elif n == 2:
		print(s1)
		continue
	nl = list()
	f = []
	v = int(n ** 0.5)
	for i in range(2, v + 1):
		if n % i == 0:
			while n % i == 0:
				n //= i
				if i % 2 == 1:
					f.append(i)
					nl.append(i)
	if n > 1 and n % 2 == 1:
		f.append(n)
	larr = len(nl)
	if len(f) == 0:
		print(s2)
	elif len(f) == 1 and f[0] * 2 == num:
		print(s2)
	else:
		print(s1)


import math
for _ in range(int(input())):
	n = int(input())
	c = 0

	def is_prime_number(x):
		for i in range(2, int(math.sqrt(x)) + 1):
			if x % i == 0:
				return False
		return True
	while n % 2 == 0:
		n = n // 2
		c += 1
	if n > 1 and c == 0:
		print('Ashishgup')
	elif n == 1 and c < 2:
		if c == 1:
			print('Ashishgup')
		elif n == 1 and c == 0:
			print('FastestFinger')
	elif n == 1 and c > 1:
		print('FastestFinger')
	elif n > 1 and c == 1:
		if is_prime_number(n):
			print('FastestFinger')
		else:
			print('Ashishgup')
	elif n > 1 and c > 1:
		print('Ashishgup')


import sys
import bisect as b
import math
from collections import defaultdict as dd
input = sys.stdin.readline

def cin():
	return map(int, sin().split())

def ain():
	return list(map(int, sin().split()))

def sin():
	return input()

def inin():
	return int(input())

def Solve(n):
	l = []
	for i in range(3, int(math.sqrt(n) + 1)):
		if n % i == 0:
			if i % 2 == 1 or n // i % 2 == 1:
				return True
	return False
for _ in range(inin()):
	n = inin()
	k = n
	f = 0
	if n == 1:
		f = 0
	elif n == 2 or n % 2 == 1:
		f = 1
	elif k & k - 1 == 0:
		f = 0
	elif k % 4 == 0:
		f = 1
	else:
		f = Solve(n)
	if f:
		print('Ashishgup')
	else:
		print('FastestFinger')


def isPrime(n):
	if n <= 1:
		return False
	if n <= 3:
		return True
	if n % 2 == 0 or n % 3 == 0:
		return False
	i = 5
	while i * i <= n:
		if n % i == 0 or n % (i + 2) == 0:
			return False
		i = i + 6
	return True
for _ in range(int(input())):
	n = int(input())
	if n % 2 != 0 and n > 1:
		print('Ashishgup')
		continue
	if n == 1:
		print('FastestFinger')
		continue
	if n == 2:
		print('Ashishgup')
		continue
	x = 0
	while n % 2 == 0:
		n = n // 2
		x = x + 1
	if n == 1:
		print('FastestFinger')
		continue
	if x == 1:
		y = isPrime(n)
		if y == True:
			print('FastestFinger')
			continue
		else:
			print('Ashishgup')
			continue
	else:
		print('Ashishgup')
		continue


import math
t = int(input())
for _ in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2:
		print('Ashishgup')
	elif n % 2 != 0:
		print('Ashishgup')
	else:
		l = []
		i = 2
		while i <= math.sqrt(n):
			if n % i == 0:
				if n / i == i:
					l.append(i)
				else:
					l.append(i)
					l.append(n // i)
			i = i + 1
		odd = 0
		for i in l:
			if i % 2 != 0 and i != n // 2:
				odd = 1
				break
		if odd == 0:
			print('FastestFinger')
		else:
			print('Ashishgup')


import sys
input = sys.stdin.readline

def div(n):
	(even, odd) = (0, 0)
	while n % 2 == 0:
		n = n // 2
		even += 1
	for i in range(3, int(n ** 0.5) + 1, 2):
		while n % i == 0:
			n = n // i
			odd += 1
	if n > 1:
		odd += 1
	return (even, odd)
t = int(input())
for _ in range(t):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n % 2 == 1:
		print('Ashishgup')
	else:
		(even, odd) = div(n)
		if even == 1 and odd == 0:
			print('Ashishgup')
		elif even > 1 and odd == 0:
			print('FastestFinger')
		elif even == 1 and odd > 1:
			print('Ashishgup')
		elif even > 1 and odd >= 1:
			print('Ashishgup')
		elif even == 1 and odd == 1:
			print('FastestFinger')


def gns():
	return list(map(int, input().split()))
t = int(input())

def isp(x):
	if x == 2:
		return True
	if x % 2 == 0:
		return False
	for i in range(3, 10 ** 5, 2):
		if i * i > x:
			return True
		if x % i == 0:
			return False
	return False
ls = 'FastestFinger'
wn = 'Ashishgup'
for _ in range(t):
	n = int(input())
	if n == 1:
		print(ls)
		continue
	if n == 2:
		print(wn)
		continue
	if n % 2 == 1:
		print(wn)
		continue
	cnt = 0
	while n % 2 == 0:
		n = n // 2
		cnt += 1
	if n == 1 or (cnt == 1 and isp(n)):
		print(ls)
		continue
	print(wn)


import sys
from collections import defaultdict as dd
from collections import Counter as cc
from queue import Queue
import math
import itertools
try:
	sys.stdin = open('input.txt', 'r')
	sys.stdout = open('output.txt', 'w')
except:
	pass
input = lambda : sys.stdin.buffer.readline().rstrip()

def isPrime(n):
	if n <= 1:
		return False
	if n <= 3:
		return True
	if n % 2 == 0 or n % 3 == 0:
		return False
	i = 5
	while i * i <= n:
		if n % i == 0 or n % (i + 2) == 0:
			return False
		i = i + 6
	return True
for _ in range(int(input())):
	q = int(input())
	w = q
	k = 0
	while w % 2 == 0:
		k += 1
		w = w // 2
	if k == 1 and (not isPrime(w)):
		print('Ashishgup')
		continue
	if (k == 1 or w == 1) and q != 2:
		print('FastestFinger')
	else:
		print('Ashishgup')


import math

def primeFactors(n):
	l = []
	while n % 2 == 0:
		l.append(2)
		n = n / 2
	for i in range(3, int(math.sqrt(n)) + 1, 2):
		while n % i == 0:
			l.append(i)
			n = n / i
	if n > 2:
		l.append(n)
	return l
t = int(input())
for i in range(t):
	n = int(input())
	if n % 2 == 1:
		if n == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')
	else:
		l = primeFactors(n)
		l_t = l.count(2)
		l_o = len(l) - l_t
		if l_o == 0:
			if l_t == 1:
				print('Ashishgup')
			else:
				print('FastestFinger')
		elif l_t > 1:
			print('Ashishgup')
		elif l_o == 1:
			print('FastestFinger')
		else:
			print('Ashishgup')


def isPowerOfTwo(x):
	return x and (not x & x - 1)

def isPrime(x):
	i = 2
	while i * i <= x:
		if x % i == 0:
			return False
		i += 1
	return True
for _ in range(int(input())):
	n = int(input())
	if n == 1:
		print('FastestFinger')
	elif n == 2 or n % 2 == 1:
		print('Ashishgup')
	elif isPowerOfTwo(n):
		print('FastestFinger')
	elif n % 4 == 0:
		print('Ashishgup')
	elif isPrime(n // 2):
		print('FastestFinger')
	else:
		print('Ashishgup')