local R=script.Parent local p=R.Parent local E=require(p.None)local d=require(p.t)local t=d.table local function N(...)local R={}for p=1,select("\035",...),1 do local d=select(p,...)if d~=nil then assert(t(d))for p,d in pairs(d)do if d==E then R[p]=nil else R[p]=d end end end end return R end return N
local Dictionary = script.Parent

local Llama = Dictionary.Parent
local None = require(Llama.None)
local t = require(Llama.t)

local validate = t.table

local function merge(...)
	local new = {}

	for dictionaryIndex = 1, select('#', ...) do
		local dictionary = select(dictionaryIndex, ...)

		if dictionary ~= nil then
			assert(validate(dictionary))
			
			for key, value in pairs(dictionary) do
				if value == None then
					new[key] = nil
				else
					new[key] = value
				end
			end
		end
	end

	return new
end

return merge