#include template inline bool chmin(T&a, T b){if(a > b){a = b; return true;}else{return false;}} template inline bool chmax(T&a, T b){if(a < b){a = b; return true;}else{return false;}} #define ll long long #define double long double #define rep(i,n) for(int i=0;i<(n);i++) #define REP(i,n) for(int i=1;i<=(n);i++) #define mod (ll)(1e9+7) #define inf (ll)(3e18+7) #define eps (double)(1e-9) #define pi (double) acos(-1) #define P pair #define PiP pair> #define all(x) x.begin(),x.end() #define rall(x) x.rbegin(),x.rend() using namespace std; int main() { int n, m, x, y, z; cin >> n >> m >> x >> y >> z; vector a(n), v; rep(i, n)cin >> a[i]; ll sum = 0, cnt = 0; rep(i, n){ if(a[i] >= x){ m--; cnt++; sum += a[i]; } if(a[i] < x && a[i] > y)v.push_back(a[i]); } if(m <= 0){ cout << "Handicapped" << endl; return 0; } n = v.size(); a = v; vector>> dp(n+1, vector>(n+1, vector(2501, 0))); dp[0][0][0] = 1; rep(i, n){ rep(j, n+1){ rep(k, 2501){ if(j != n && k+a[i] <= 2500)dp[i+1][j+1][k+a[i]] += dp[i][j][k]; dp[i+1][j][k] += dp[i][j][k]; } } } ll ans = 0; rep(i, n+1){ if(i > m)continue; if(cnt+i == 0)continue; int k = z*(cnt+i)-sum; if(0 <= k && k <= 2500)ans += dp[n][i][k]; } cout << ans << endl; }