#include using namespace std; #define all(v) v.begin(),v.end() using ll = long long; using ull = unsigned long long; using vll=vector; using vvll = vector>; const ll INF=1ll<<60; using vp=vector>; int main(){ ll N; cin>>N; vll A(N); for(auto &e:A) cin >>e; vector pri(1e7); for(int i=0;i<=1e7;i++) pri[i]=i; for(ll i=2;i<=1e7;i++){ if(pri[i]!=i) continue; ll j=1; while(i*j<=1e7){ pri[i*j]=min(i,pri[i*j]); j++; } } vll B; for(int i=0;i1){ if(now==pri[A[i]])A[i]/=pri[A[i]],cnt++; else{ B.push_back(cnt%3); now=pri[A[i]]; A[i]/=pri[A[i]]; cnt=1; } } B.push_back(cnt%3); } ll a=0; for(auto x:B) a^=x; if(a) cout << "Alice" << endl; else cout << "Bob" << endl; }