n, z = io.read("*n","*n") t = {} t[0] = true for i = 1, n do a = io.read("*n") nums = {} for k, v in pairs(t) do table.insert(nums, k + a) end for k, v in pairs(nums) do t[v] = true end end max = 0 for k, v in pairs(t) do if(max < k and k <= z) then max = k end end print(max)