N,W = map(int,input().split()) a = list(map(int,input().split())) ans = 0 score = 0 cnd_list = [] cnd = [] def dfs(x): global score,ans,cnd,cnd_list if score == W: cnd_list.append(tuple(cnd)) ans += 1 return if x == N: return if score > W: return dfs(x+1) score += a[x]//2 cnd.append(x) dfs(x+1) cnd.remove(x) score -= a[x]//2 score += a[x] cnd.append(x) dfs(x+1) cnd.remove(x) score -= a[x] return dfs(0) print(len(set(cnd_list)))