-- get

local getAsset, getNameFromID do
	local cache = {
		Passes = {},
		Products = {}
	}

	for i, pass in pairs(script.Passes:GetChildren()) do
		cache.Passes[pass.Name] = require(pass)
	end

	for i, product in pairs(script.Products:GetChildren()) do
		cache.Products[product.Name] = require(product)
	end

	function getAsset(identity)
		for class, content in pairs(cache) do
			for name, module in pairs(content) do
				if (identity == name or identity == module.Id) then
					return module, class
				end
			end
		end
	end

	function getNameFromID(id)
		for class, content in pairs(cache) do
			for name, module in pairs(content) do
				if id == module.Id then
					return name
				end
			end
		end
	end
end
