local mfl, mce = math.floor, math.ceil local n, x, y, z = io.read("*n", "*n", "*n", "*n") local a = {} for i = 1, n do a[i] = io.read("*n") if a[i] % 1000 == 0 then a[i] = mfl(a[i] / 1000) + 1 else a[i] = mce(a[i] / 1000) end end table.sort(a) local f = true for i = n, 1, -1 do local v = a[i] local cur = x + y * 5 + z * 10 if cur < v then f = false break end local zneed = mfl(a[i] / 10) v = v - zneed * 10 if zneed <= z then z = z - zneed else local yneed = (zneed - z) * 2 z = 0 if yneed <= y then y = y - yneed else local xneed = (yneed - y) * 5 y = 0 x = x - xneed end end if v <= 4 then if v <= x then x = x - v elseif 1 <= y then y = y - 1 else z = z - 1 end else if 1 <= y and (v - 5) <= x then v = v - 5 y = y - 1 x = x - v elseif v <= x then x = x - v elseif 1 <= z then z = z - 1 else y = y - 2 end end end print(f and "Yes" or "No")