#include <bits/stdc++.h>
using namespace std;
struct debugger {
  template <typename T>
  debugger& operator,(const T& v) {
    cerr << v << "\t";
    return *this;
  }
} dbg;
template <class A, class B>
ostream& operator<<(ostream& o, const pair<A, B>& p) {
  return o << "(" << p.first << ", " << p.second << ")";
}
template <class T>
ostream& operator<<(ostream& o, const vector<T>& v) {
  o << "[";
  for (__typeof((v).end()) it = (v).begin(); it != (v).end(); ++it)
    o << *it << ", ";
  return o << "]";
}
template <class T>
ostream& operator<<(ostream& o, const set<T>& v) {
  o << "[";
  for (__typeof((v).end()) it = (v).begin(); it != (v).end(); ++it)
    o << *it << ", ";
  return o << "]";
}
template <class T>
inline void MAX(T& a, T b) {
  if (a < b) a = b;
}
template <class T>
inline void MIN(T& a, T b) {
  if (a > b) a = b;
}
template <class T>
inline bool read(T& x) {
  int c = getchar();
  int sgn = 1;
  while (~c && c < '0' || c > '9') {
    if (c == '-') sgn = -1;
    c = getchar();
  }
  for (x = 0; ~c && '0' <= c && c <= '9'; c = getchar()) x = x * 10 + c - '0';
  x *= sgn;
  return ~c;
}
int a[15], l = 0;
int main() {
  memset(a, 0, sizeof a);
  for (__typeof((6) - 1) i = (0); i <= (6) - 1; ++i) {
    int x = ({
      int a;
      scanf("%d", &a);
      a;
    });
    a[x]++;
    if (a[x] >= 4) l = x;
  }
  if (!l)
    puts("Alien");
  else {
    a[l] -= 4;
    int c = 0;
    for (__typeof((10) - 1) i = (0); i <= (10) - 1; ++i)
      if (a[i]) c++;
    if (c > 1)
      puts("Bear");
    else
      puts("Elephant");
  }
}
