local function p(p,...)local d=type(p)assert(d=="\116\097\098\108\101","\101\120\112\101\099\116\101\100 \097 \116\097\098\108\101 \102\111\114 \102\105\114\115\116 \097\114\103\117\109\101\110\116\044 \103\111\116 "..d)local T=select("\035",...)local J={}for p=1,T,1 do J[p]=select(p,...)end for d=1,#p,1 do J[T+d]=p[d]end return J end return p

local function unshift(list, ...)
	local listType = type(list)
	assert(listType == "table", "expected a table for first argument, got " .. listType)

	local argc = select('#', ...)

	local new = {}

	for i = 1, argc do
		new[i] = select(i, ...)
	end

	for i = 1, #list do
		new[argc + i] = list[i]
	end

	return new
end

return unshift