function Functional.Filter(N,p)local f={}for z=1,#N,1 do local D=N[z]if p(D,z)then table.insert(f,D)end end return f end
--[[
	Create a copy of a list with only values for which `callback` returns true
]]
function Functional.Filter(list, callback)
	local new = {}

	for key = 1, #list do
		local value = list[key]
		if callback(value, key) then
			table.insert(new, value)
		end
	end

	return new
end
