function Scheduler.runTasks()if not willUpdate then return end for u,k in pairs(propertyChanges)do for k,F in pairs(k)do if F==None then F=nil end u[k]=F end end for u in pairs(callbacks)do u()end willUpdate=false table.clear(propertyChanges)table.clear(callbacks)end RunService:BindToRenderStep("\095\095\070\117\115\105\111\110\085\073\083\099\104\101\100\117\108\101\114",Enum.RenderPriority.Last.Value,Scheduler.runTasks)return Scheduler

function Scheduler.runTasks()
	-- if no tasks were enqueued, exit early
	if not willUpdate then
		return
	end

	-- execute property changes
	for instance, propertyTable in pairs(propertyChanges) do
		for property, value in pairs(propertyTable) do
			if value == None then
				value = nil
			end
			instance[property] = value
		end
	end

	-- run deferred callbacks
	for callback in pairs(callbacks) do
		callback()
	end

	willUpdate = false
	table.clear(propertyChanges)
	table.clear(callbacks)
end

RunService:BindToRenderStep(
	"__FusionUIScheduler",
	Enum.RenderPriority.Last.Value,
	Scheduler.runTasks
)

return Scheduler
