local r_eat, g_eat, r_num, g_num, a_num 
= io.read("*n", "*n", "*n", "*n", "*n")

local function writeList(num)
    local list = {}
    for i = 1, num do
        list[i] = io.read("*n")
    end
    return list
end

local r_taste = writeList(r_num)
local g_taste = writeList(g_num)
local a_taste = writeList(a_num)

table.sort(r_taste, function(x, y) return x > y end)
table.sort(g_taste, function(x, y) return x > y end)
table.sort(a_taste, function(x, y) return x > y end)
for i = 1, r_num - r_eat do
    r_taste[#r_taste] = nil
end
for i = 1, g_num - g_eat do
    g_taste[#g_taste] = nil
end

local function removeMin(list1, list2, list3)
    if     list3 and (list1[#list1] <= list2[#list2]) then
        table.remove((list1[#list1] <  list3[#list3]) and list1 or list3)
    elseif list3 and (list2[#list2] <  list1[#list1]) then
        table.remove((list2[#list2] <  list3[#list3]) and list2 or list3)
    else
        table.remove((list1[#list1] <  list2[#list2]) and list1 or list2)
    end
end

for i = 1, #a_taste do
    if r_taste[#r_taste] and g_taste[#g_taste] and a_taste[#a_taste] then
        removeMin(r_taste, g_taste, a_taste)
    elseif r_taste[#r_taste] and g_taste[#g_taste] then
        removeMin(r_taste, g_taste)
    elseif g_taste[#g_taste] and a_taste[#a_taste] then
        removeMin(g_taste, a_taste)
    elseif a_taste[#a_taste] and r_taste[#r_taste] then
        removeMin(a_taste, r_taste)
    elseif r_taste[#r_taste] then
        table.remove(r_taste)
    elseif g_taste[#g_taste] then
        table.remove(g_taste)
    elseif a_taste[#a_taste] then
        table.remove(a_taste)
    end
end

local function samList(list)
    local result_sam = 0LL
    for i = 1, #list do
        result_sam = result_sam + list[i]
    end
    return result_sam
end
local result = 0LL
result = samList(r_taste) + samList(g_taste) + samList(a_taste)

print(tostring(result):sub(1, -3))