function GuiController.getOtherScreenGuis(J)local O=Cryo.List.filter(J.player.PlayerGui:GetDescendants(),function(O)local b=false for J,D in ipairs(J.whitelist)do if D:getValue()==O then b=true break end end return O:IsA("\083\099\114\101\101\110\071\117\105")and(O.Enabled and not b)end)return O end function GuiController.getShownCoreGuis(J)local O=Cryo.List.filter(Enum.CoreGuiType:GetEnumItems(),function(O)return J.StarterGui:GetCoreGuiEnabled(O)and O~=Enum.CoreGuiType.All end)return O end return GuiController

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
