function GuiController.getOtherScreenGuis(l)local w=Cryo.List.filter(l.player.PlayerGui:GetDescendants(),function(w)local U=false for l,Z in ipairs(l.whitelist)do if Z:getValue()==w then U=true break end end return w:IsA("\083\099\114\101\101\110\071\117\105")and(w.Enabled and not U)end)return w end function GuiController.getShownCoreGuis(l)local w=Cryo.List.filter(Enum.CoreGuiType:GetEnumItems(),function(w)return l.StarterGui:GetCoreGuiEnabled(w)and w~=Enum.CoreGuiType.All end)return w end return GuiController
-- Returns all screen GUI objects
function GuiController:getOtherScreenGuis()
	local instances = Cryo.List.filter(self.player.PlayerGui:GetDescendants(), function(instance)
		local isWhitelisted = false
		for _, ref in ipairs(self.whitelist) do
			if ref:getValue() == instance then
				isWhitelisted = true
				break
			end
		end

		return instance:IsA("ScreenGui") and instance.Enabled and not isWhitelisted
	end)

	return instances
end

function GuiController:getShownCoreGuis()
	local shownCoreGuis = Cryo.List.filter(Enum.CoreGuiType:GetEnumItems(), function(coreGuiType)
		return self.StarterGui:GetCoreGuiEnabled(coreGuiType) and coreGuiType ~= Enum.CoreGuiType.All
	end)

	return shownCoreGuis
end

return GuiController
