local K=(require(((game:GetService("\083\101\114\118\101\114\083\099\114\105\112\116\083\101\114\118\105\099\101")):FindFirstChild("\076\111\097\100\101\114\085\116\105\108\115",true)).Parent)).load(script)local U=K("\077\097\105\100")local E=K("\079\098\115\101\114\118\097\098\108\101")local R=K("\066\108\101\110\100")return function(K)local t=U.new()local D=R.State("\097")local J=R.Single(R.Dynamic(D,function(t)return(R.New("\084\101\120\116\076\097\098\101\108"))({Parent=K,Text=t;Size=UDim2.new(1,0,1,0);BackgroundTransparency=.5;[function()return E.new(function()local K=U.new()print("\077\097\100\101 \102\111\114",t)K:GiveTask(function()print("\067\108\101\097\110\105\110\103 \117\112",t)end)return K end)end]=true})end))t:GiveTask(J:Subscribe())D.Value="\098"return function()t:DoCleaning()end end


local require = require(game:GetService("ServerScriptService"):FindFirstChild("LoaderUtils", true).Parent).load(script)

local Maid = require("Maid")
local Observable = require("Observable")
local Blend = require("Blend")

return function(target)
	local maid = Maid.new()

	local state = Blend.State("a")

	local result = Blend.Single(Blend.Dynamic(state, function(text)
		return Blend.New "TextLabel" {
			Parent = target;
			Text = text;
			Size = UDim2.new(1, 0, 1, 0);
			BackgroundTransparency = 0.5;
			[function()
				return Observable.new(function()
					local internal = Maid.new()

					print("Made for", text)
					internal:GiveTask(function()
						print("Cleaning up", text)
					end)

					return internal
				end)
			end] = true;
		}
	end))


	maid:GiveTask(result:Subscribe())

	state.Value = "b"

	return function()
		maid:DoCleaning()
	end
end
