local function i(i,c,...)if not c then local i=...error(i,2)end if coroutine.status(i)~="\100\101\097\100"then error(debug.traceback(i,"\065\116\116\101\109\112\116\101\100 \116\111 \121\105\101\108\100 \105\110\115\105\100\101 \067\104\097\110\103\101\100 \101\118\101\110\116\033"),2)end return...end local function c(c,...)local K=coroutine.create(c)return i(K,coroutine.resume(K,...))end return c


local function resultHandler(co, ok, ...)
	if not ok then
		local err = (...)
		error(err, 2)
	end

	if coroutine.status(co) ~= "dead" then
		error(debug.traceback(co, "Attempted to yield inside Changed event!"), 2)
	end

	return ...
end

local function NoYield(callback, ...)
	local co = coroutine.create(callback)

	return resultHandler(co, coroutine.resume(co, ...))
end

return NoYield
