#include <bits/stdc++.h>
using namespace std;
struct pairhash {
 public:
  template <typename T, typename U>
  size_t operator()(const pair<T, U> &x) const {
    size_t seed = hash<T>()(x.first);
    return hash<U>()(x.second) + 0x9e3779b9 + (seed << 6) + (seed >> 2);
  }
};
const int inf = 1e9 + 9;
const long long mod = 1e9 + 7;
const double eps = 1e-8;
const double pi = acos(-1);
int gcd(int a, int b) {
  if (b == 0) return a;
  return gcd(b, a % b);
}
bool solve(int n) {
  vector<int> a(n);
  int maxi = 0;
  for (int i = 0; i < n; i++) {
    cin >> a[i];
    maxi = max(maxi, a[i]);
  }
  int g = a[0];
  for (int i = 1; i < n; i++) g = gcd(a[i], g);
  return (((maxi - g) / g - (n - 1)) % 2 == 1);
}
int main() {
  ios::sync_with_stdio(false);
  cin.tie(0);
  cout << fixed << setprecision(15);
  int n;
  cin >> n;
  cout << (solve(n) ? "Alice" : "Bob") << '\n';
}
