func_code_string: #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 );     }   }   