N=int(raw_input()) M=map(int,raw_input().split()) grundy = [0 for i in range(10001)] isPrime=[True for i in range(10001)] isPrime[0]=False isPrime[1]=False for i in range(2,10001): if isPrime[i]: for j in range(i+i,10001,i): isPrime[j]=False prime=[i for i in range(10001) if isPrime[i]] for i in xrange(2,10001): s=set([]) for p in prime: if i%p==0: s.add(grundy[i/p]) if i%(p*p)==0: s.add(grundy[i/p/p]) for g in xrange(10001): if not g in s: grundy[i]=g break #print grundy[i], g=0 for m in M: g^=grundy[m] if g==0: print "Bob" else: print "Alice"