#include <bits/stdc++.h>
std::set<int> s;
int gcd(int a, int b) { return b == 0 ? a : gcd(b, a % b); }
int _gcd(int set[], int len) {
  if (len == 1) return set[0];
  int mid = len / 2;
  return gcd(_gcd(set, mid), _gcd(set + mid, len - mid));
}
int __gcd(std::set<int> set) {
  int _set[100];
  int it = 0;
  for (auto x : set) {
    _set[it] = x;
    ++it;
  }
  return _gcd(_set, it);
}
int main() {
  std::ios::sync_with_stdio(false);
  std::cin.tie(nullptr);
  int n;
  std::cin >> n;
  for (int i = 0; i < n; ++i) {
    int a;
    std::cin >> a;
    s.insert(a);
  }
  int g = __gcd(s);
  std::set<int> S;
  for (auto x : s) {
    S.insert(x / g);
  }
  auto x = S.rbegin();
  int ans = *x + S.size();
  std::cout << (ans % 2 == 1 ? "Alice" : "Bob");
}
