local L=require(script.Parent.Parent)local O=L(function(L)assert(L:IsA("\066\097\115\101\080\097\114\116"),"\110\111\116 \097 \066\097\115\101\080\097\114\116")local O={Instance=L}local l=task.spawn(function()while task.wait(.25)do L.Color=Color3.fromHSV(math.random(0,1000)/1000,math.random(0,1000)/1000,math.random(0,1000)/1000)end end)function O.Destroy(L)task.cancel(l)end return O,function()O:Destroy()end end)O:Tag("\087\114\097\112\112\101\114\084\101\115\116")return O
local Wrapper = require(script.Parent.Parent)

local MyWrapper = Wrapper(function(Instance)
	assert(Instance:IsA("BasePart"), "not a BasePart")

	local Object = {
		Instance = Instance,
	}

	local ColorRandomizer = task.spawn(function()
		while task.wait(0.25) do
			Instance.Color =
				Color3.fromHSV(math.random(0, 1000) / 1000, math.random(0, 1000) / 1000, math.random(0, 1000) / 1000)
		end
	end)

	function Object:Destroy()
		task.cancel(ColorRandomizer)
	end

	return Object, function()
		Object:Destroy()
	end
end)

MyWrapper:Tag("WrapperTest")

return MyWrapper
