do -- firewall
	--[[
	local debug=debug
	local getinfo=debug.getinfo

	local function trace()
		local i = getinfo(2,'S')

		local s = i.short_src
		if s=="LuaCmd" then
				error"no"
		end
	end
	 
	-- optimization
	local Tag="eek"
	hook.Add("CreateMove",Tag,function() 
		debug.sethook(trace, "c")
	end)

	hook.Add("SetupMove",Tag,function() 
		debug.sethook()
	end)
	]]
end

--[[
if not pcall(setfenv, _G.RunString, getfenv(_G.RunString)) then
	local RunString = _G.RunString
	local RunStringEx = _G.RunStringEx
	local CompileString = _G.CompileString

	_G.RunString = function(line)
		print(line)
		debug.Trace()
		return RunString(line)
	end

	_G.RunStringEx = function(line, id)
		print(id, line)
		debug.Trace()
		return RunStringEx(line, id)
	end

	_G.CompileString = function(line, id, err)
		print(id, line, err)
		debug.Trace()
		return CompileString(line, id, err)
	end
end
]]

--[[
if not pcall(setfenv, _G.render.Capture, getfenv(_G.render.Capture)) then -- check if it's a C function
	local render_Capture = render.Capture

	function render.Capture(tab)
		render.Clear(0, 0, 0, 255, true, true)
		render.RenderView( {
			origin = EyePos(),
			angles = EyeAngles(),
			x = 0,
			y = 0,
			w = ScrW(),
			h = ScrH(),
			dopostprocess = true,
			drawhud = true,
			drawmonitors = true,
			drawviewmodel = true
		})

		local worldpanel = _G.vgui.GetWorldPanel()
		if IsValid( worldpanel ) then
			worldpanel:PaintManual()
		end

		return render_Capture(tab)
	end
end
]]

if not game.SinglePlayer() then
	local vgui_GetHoveredPanel = vgui.GetHoveredPanel
	vgui.GetHoveredPanel = function()
		local pnl = vgui_GetHoveredPanel()

		if pnl and pnl:GetName() == "HudChat" then
			return nil
		end

		return pnl
	end
end