def solve(volumes,n,w):
    if w==0:
        return 1
    if w<0:
        return 0
    if sum(volumes)<=w:
        return 2**n
    return solve(volumes[1:],n-1,w)+solve(volumes[1:],n-1,w-volumes[0])

import sys
if __name__=="__main__":
    line1Slice=input().split(" ")
    n,w=int(line1Slice[0]),int(line1Slice[1])
    line2Slice=input().split(" ")
    volumes=[int(i) for i in line2Slice]
    print(solve(volumes,n,w))