service=nil Routine=nil client=nil return function(Y,E,k)local L={}local n=.5 local s=false local h=Color3.new(math.random(),math.random(),math.random())local F={Frame=true;TextBox=true;TextLabel=true;TextButton=true,ImageLabel=true;ImageButton=true;ScrollingFrame=true}local function T(Y)for Y,E in pairs(Y:GetChildren())do if F[E.ClassName]then table.insert(L,E)T(E)end end end if F[Y.ClassName]then table.insert(L,Y)end T(Y)if k.Name=="\076\105\115\116"then Y.Drag.Main.BackgroundTransparency=0 end local f=.001 local Z=.7 local M=.1 local D,w,S=.1,.5,.8 local U,Q,X=true,true,true local i={Color3.fromRGB(255,85,88);Color3.fromRGB(78,140,255);Color3.fromRGB(16,251,255)}local function l(Y,E,k,n)local s=k or.1 for k=0,1,s do for L,n in next,L do if n.Name~="\067\097\112\101\067\111\108\111\114"and n.Name~="\067\111\108\111\114"then n.BackgroundColor3=Y:lerp(E,k)if n:IsA("\073\109\097\103\101\076\097\098\101\108")or n:IsA("\073\109\097\103\101\066\117\116\116\111\110")then n.ImageColor3=Y:lerp(E,k)end end end wait(n/(1/s))end end service.TrackTask("\084\104\114\101\097\100\058 \067\111\108\111\114\105\122\101\095"..tostring(k.Name),function()while(k.Active and wait()or wait(1))and not k.Destroyed do for Y,E in next,i do local k,L=i[Y],i[1]if Y==#i then L=i[1]else L=i[Y+1]end l(k,L,.01,2)end end end)end


service = nil
Routine = nil
client = nil

return function(gui, guiData, gTable)
	local contents = {}
	local lerper = 0.5
	local switch = false
	local targetColor = Color3.new(math.random(),math.random(),math.random())
	local classes = {
		Frame = true;
		TextBox = true;
		TextLabel = true;
		TextButton = true;
		ImageLabel = true;
		ImageButton = true; 
		ScrollingFrame = true;
	}
	
	local function getCont(obj)
		for i,v in pairs(obj:GetChildren()) do 
			if classes[v.ClassName] then
				table.insert(contents,v)
				getCont(v)
			end
		end
	end
	
	if classes[gui.ClassName] then
		table.insert(contents,gui)
	end
	
	getCont(gui)
	
	if gTable.Name == "List" then
		gui.Drag.Main.BackgroundTransparency = 0
	end
	
	local increment = 0.001
	local max = 0.7
	local min = 0.1
	local r,g,b = 0.1,0.5,0.8
	local rt,gt,bt = true,true,true 
	local sequence = {
		Color3.fromRGB(255, 85, 88), 
		Color3.fromRGB(78, 140, 255), 
		Color3.fromRGB(16, 251, 255)
	}
	
	local function lerpToColor(color1, color2, inc, time)
		local inc = inc or 0.1
		for i = 0, 1, inc do
			for i2,v in next,contents do
				if v.Name ~= "CapeColor" and v.Name ~= "Color" then
					v.BackgroundColor3 = color1:lerp(color2, i)
					if v:IsA("ImageLabel") or v:IsA("ImageButton") then
						v.ImageColor3 = color1:lerp(color2, i)
					end
				end
			end
			wait(time/(1/inc))
		end
	end
	
	service.TrackTask("Thread: Colorize_"..tostring(gTable.Name),function()
		while ((gTable.Active and wait()) or wait(1)) and not gTable.Destroyed do
			for i,v in next,sequence do
				local one, two = sequence[i], sequence[1]
				
				if i == #sequence then
					two = sequence[1]
				else
					two = sequence[i+1]
				end
				
				lerpToColor(one, two, 0.01, 2)
			end
		end
	end)
end
