local L=math.min local t=math.max local q=math.cos local d=math.sin local i=math.pi local z=Vector3.new local function E(L,...)local t={}local q=""for L,d in pairs({...})do t[d]=true q=q..((q==""and""or" \111\114 ")..d)end local d=type(L)assert(t[d],q..(" \116\121\112\101 \101\120\112\101\099\116\101\100\044 \103\111\116\058 "..d))end


local math_min = math.min
local math_max = math.max
local math_cos = math.cos
local math_sin = math.sin
local math_pi = math.pi

local Vector3_new = Vector3.new

local function AssertTypes(param, ...)
	local allowedTypes = {}
	local typeString = ''
	for _, typeName in pairs({...}) do
		allowedTypes[typeName] = true
		typeString = typeString .. (typeString == '' and '' or ' or ') .. typeName
	end
	local theType = type(param)
	assert(allowedTypes[theType], typeString .. " type expected, got: " .. theType)
end
