import java.io.*; import java.util.*; import java.text.*; import java.math.*; import java.util.regex.*; public class Solution { static int countPrimes (int range) { // check if n is a multiple of 2 int n = range; // initially assume all integers are prime boolean[] isPrime = new boolean[n+1]; for (int i = 2; i <= n; i++) { isPrime[i] = true; } // mark non-primes <= n using Sieve of Eratosthenes for (int factor = 2; factor*factor <= n; factor++) { // if factor is prime, then mark multiples of factor as nonprime // suffices to consider mutiples factor, factor+1, ..., n/factor if (isPrime[factor]) { for (int j = factor; factor*j <= n; j++) { isPrime[factor*j] = false; } } } isPrime[1]=true; int primes = 0; for (int i = 2; i <= n; i++) { if (isPrime[i]) primes++; } if(n>=2) primes++; return primes; } public static void main(String[] args) { Scanner in = new Scanner(System.in); int g = in.nextInt(); int count; for (int a0 = 0; a0 < g; a0++) { int n = in.nextInt(); count = 0; String winner=""; count=countPrimes(n); if (count == 0) { winner="Bob"; } else { if ((count % 2) == 0) { winner="Alice"; } else { if (count % 2 == 1) { winner="Bob"; } } } System.out.println(winner); } } }