import bisect
N, X, Y, Z = map(int, input().split())
A = list(map(int, input().split()))


def pay(yen, num):
    A.sort()
    i = bisect.bisect_left(A, yen)
    while i < len(A):
        pay = min(num, A[i] // yen)
        num -= pay
        A[i] -= yen * pay
        if num <= 0:
            return
        i += 1

    # 残ってるのはyen円以下
    A.sort()
    while A and num:
        A.pop()
        num -= 1
    return


if A and Z:
    pay(10000, Z)
if A and Y:
    pay(5000, Y)
if A and X:
    pay(1000, X)

ans = "No" if A else "Yes"
print(ans)