import java.io.*; import java.util.*; import java.text.*; import java.math.*; import java.util.regex.*; public class Solution { public static void main(String[] args) { Scanner in = new Scanner(System.in); int g = in.nextInt(); for(int a0 = 0; a0 < g; a0++){ int n = in.nextInt(); boolean[] primeNumbers = sieveOfEratosthenes(n); int number = 0; for (boolean isPrime : primeNumbers) { if (isPrime) number++; } //if (number == 2) System.out.println("Alice"); System.out.println(number%2==0?"Bob":"Alice"); } } public static boolean[] sieveOfEratosthenes(int max) { boolean[] flags = new boolean[max + 1]; int prime = 2; init(flags); while (prime <= Math.sqrt(max)) { crossOff(flags, prime); prime = getNextPrime(flags, prime); if (prime >= flags.length) break; } return flags; } private static void init(boolean[] flags) { for (int i = 2; i < flags.length; i++) flags[i] = true; } private static void crossOff(boolean[] flags, int prime) { for (int i = prime * prime; i < flags.length; i += prime) { flags[i] = false; } } public static int getNextPrime(boolean[] flags, int prime) { int next = prime + 1; while (next < flags.length && !flags[next]) next++; return next; } }