local function Z(q,C)for C,A in pairs(C)do if type(q[C])=="\116\097\098\108\101"and type(A)=="\116\097\098\108\101"then q[C]=Z(q[C],A)else q[C]=A end end return q end Table.deepOverwrite=Z
--- Overwrites a table's value
-- @function Table.deepOverwrite
-- @tparam table target Target table
-- @tparam table source Table to read from
-- @treturn table target
local function deepOverwrite(target, source)
	for index, value in pairs(source) do
		if type(target[index]) == "table" and type(value) == "table" then
			target[index] = deepOverwrite(target[index], value)
		else
			target[index] = value
		end
	end
	return target
end
Table.deepOverwrite = deepOverwrite
