IRIDESCENT PAID SCRIPT LEAKED
Key Required

IRIDESCENT PAID SCRIPT LEAKED

Fallen Survival🏹crlixcrlix 5.8K views 458 executesUpdated Aug 8, 2025
5.0/ 5(1 votes)
10100% Positive
Lua Script•12651 lines (616104 chars)
loadstring(game:HttpGet('https://raw.githubusercontent.com/mainstreamed/amongus-hook/refs/heads/main/iridescent/main.lua'))();









open source: 
--[[
      Leaked by mainstreamed and ender :)
      Have fun skids
      
      notes: 
            Code seems very put together using different scripts, but overall pretty good.
            Bypass's were made by someone else, they are very good and bypass almost everything.
]]

--[[
    Text icons for things. Not sure when I will use these.
    ?
    ?
    ?
    ?
    ?
    ?

    ?
    €
    ?
]]

-- antiliases
if not LPH_OBFUSCATED then
	LPH_JIT = function(Function) return Function end
	LPH_JIT_MAX = function(Function) return Function end
	LPH_NO_VIRTUALIZE = function(Function) return Function end
      LPH_NO_UPVALUES = function(Function) return function(...) return Function(...) end end
	LPH_ENCSTR = function(String) return String end
	LPH_ENCNUM = function(Number) return Number end
	LPH_CRASH = function() return rconsoleprint("DEBUG: CLIENT CALLED CRASH") end
	--
	LRM_IsUserPremium = true
	LRM_LinkedDiscordID = "Developer"
	LRM_ScriptName = "ScriptName"
	LRM_TotalExecutions = 0
	LRM_SecondsLeft = 999999
	LRM_UserNote = "UserNote"

	if not getgenv then
		getgenv = function() return _G end
	end

	if not cloneref then
		cloneref = function(Reference) return Reference end
	end

	if not loadfile then
		loadfile = function(...) return ... end
	end

	if not readfile then
		readfile = function(...) return ... end
	end

	if not request then
		request = function(...) return ... end
	end

	if not clonefunction then
		clonefunction = function(f) return f end
	end

	if not newcclosure then
		newcclosure = function(...) return ... end
	end

	if not hookfunction then
		hookfunction = function() end
	end

	if not getrenv then
		getrenv = function() return {} end
	end
end 

local Start       = tick();
local Executor    = identifyexecutor()

writefile("LogFile.txt", "Iridescent loading started...\n")

local function Log(txt)
	appendfile("LogFile.txt", txt.. " | "..tostring(tick() - Start));
	appendfile("LogFile.txt", "\n");
end;

--// FALLEN anticheat Bypass!!!
LPH_JIT_MAX(function()
	if game.PlaceId ~= 17574618959 then --// I need this region to be completely cut off from everythning else soooo
		local Players = cloneref(game:GetService("Players"))
		local Client = Players.LocalPlayer; 

		local Character = Client.Character; 
		local Humanoid = Character and Character:WaitForChild("Humanoid");

		if not Humanoid then 
			Client:Kick("Please load the script when you are spawned in.") 
			return 
		end;

		local DeepSearchTable;
		DeepSearchTable = LPH_NO_VIRTUALIZE(function(Table, TargetValue, MaxDepth, CurrentPath, Visited, Results)
			if MaxDepth <= 0 or type(Table) ~= "table" then 
				return; 
			end;
			Visited = Visited or {};
			Results = Results or {};
			CurrentPath = CurrentPath or "";

			if Visited[Table] then 
				return;
			end;
			Visited[Table] = true;

			for Key, Value in pairs(Table) do
				local Path = CurrentPath .. "[" .. tostring(Key) .. "]"

				if Value == TargetValue then
					table.insert(Results, {
						Path = Path,
						Parent = Table,
						Key = Key,
						Value = Value
					});
				elseif type(Value) == "table" then
					DeepSearchTable(Value, TargetValue, MaxDepth - 1, Path, Visited, Results)
				end;
			end;
			return Results
		end);

		local BypassCheck1 = false
		local BypassCheck2 = false 

		Log("Loading Bypass #1...")
		for Index, Table in getgc(true) do 
			if type(Table) ~= "table" then
				continue
			end; 
			if typeof(rawget(Table, 1)) == "Instance" and rawget(Table, 1).Name == "Remotes" then 
				local BanTable = rawget(Table, 4);

				setmetatable(BanTable, { 
					__index = function() end,
					__newindex = function(...) 
                                    --[[local ArgumentString = "Ban Table #1 Changed";
                                    local Args = {...};

                                    for Index, Value in Args[3] do 
                                          ArgumentString = ArgumentString .. tostring(Index) .. " = "..tostring(Value).."\n"
                                    end; 
                                    
                                    Log(ArgumentString)]]
					end
				});
				BypassCheck1 = true
			end;
		end;

		if not BypassCheck1 then 
			Client:Kick("Failed to load. 0x01");
			return
		end;
		Log("Bypass #1 Loaded.")
		Log("Loading Bypass #2...")

		for Index, Table in getgc(true) do 
			if type(Table) ~= "table" then 
				continue 
			end; 
			if rawget(Table, 1) == Character and rawget(Table, 2) == Humanoid and #Table == 9 then 
				local BanTable_1 = rawget(Table, 8);
				local BanTable_2 = rawget(Table, 5);

				setmetatable(BanTable_1, {
					__index = function() end,
					__newindex = function(...) 
                                    --[[local ArgumentString = "Ban Table #2 Changed";
                                    local Args = {...};

                                    for Index, Value in Args[3] do 
                                          ArgumentString = ArgumentString .. tostring(Index) .. " = "..tostring(Value).."\n"
                                    end; 
                                    
                                    Log(ArgumentString)]]
					end;
				});

				setmetatable(BanTable_2, {
					__index = function() end,
					__newindex = function(...) 
                                    --[[local ArgumentString = "Ban Table #3 Changed";
                                    local Args = {...};

                                    for Index, Value in Args[3] do 
                                          ArgumentString = ArgumentString .. tostring(Index) .. " = "..tostring(Value).."\n"
                                    end; 
                                    
                                    Log(ArgumentString)]]
					end;
				});

				BanTable_2 = nil;
				BypassCheck2 = true
			end;
		end;

		if not BypassCheck2 then 
			Client:Kick("Failed to load. 0x02");
			return
		else 
			print("init ez ez")
		end; 

		Log("Loaded Bypass #2..")

		for _, Function in getgc(false) do 
			if type(Function) ~= "function" then 
				continue 
			end; 
			if not islclosure(Function) then 
				continue 
			end; 
			if isexecutorclosure(Function) then 
				continue 
			end; 

			local Info = debug.getinfo(Function);

			if Info.source:find("AssetContainer") then 
				local Name = Info.name; 
				local Protos = debug.getprotos(Function);

				local Upvalues = debug.getupvalues(Function);

				if Protos[1] then 
					local Proto = debug.getproto(Function, 1)
					local Constants = debug.getconstants(Proto);

					if Constants[2] == "SurfaceGui" then  --// HIGHLIGHTS, BB GUI
						hookfunction(debug.getproto(Function, 1), LPH_NO_UPVALUES(function(...) 
							return
						end));

						--print("ESP DTC:", Proto)
					end;

					if table.find(Constants, "Foundation") then --// XRAY, TOUCH COLLISIONS
						hookfunction(debug.getproto(Function, 1), LPH_NO_UPVALUES(function(...) 
							return
						end));
						--print("XRAY DTC:", Proto)
					end;

					if table.find(Constants, "LocalAmmo") and table.find(Constants, "Equipped") then  --// VM ATTRIBUTES
						hookfunction(debug.getproto(Function, 1), LPH_NO_UPVALUES(function(...) 
							return
						end));
						--print("Attr DTC:", Proto)
					end;

					if table.find(Constants, "WalkSpeed") then --// Walk Speed
						hookfunction(debug.getproto(Function, 1), LPH_NO_UPVALUES(function() 
							return
						end));
						--print("Walkspeed DTC:", Proto)
					end;
				end;

                        --[[
                        local FOVResults = DeepSearchTable(Upvalues, "FieldOfView", 10, "", {}, {}, Function)
                        local WalkspeedResults  = DeepSearchTable(Upvalues, 18.01, 11, "", {}, {}, Function)
                        local BrightnessResults = DeepSearchTable(Upvalues, 2.001, 11, "", {}, {}, Function)
                        local HazeResults = DeepSearchTable(Upvalues, 2.079, 11, "", {}, {}, Function)

                        local AdornmentResults = DeepSearchTable(Upvalues, "PVAdornment", 11, "", {}, {}, Function)
                        local OutdoorResults = DeepSearchTable(Upvalues, "OutdoorAmbient", 10, "", {}, {}, Function);

                        if AdornmentResults then 
                              for I, Result in AdornmentResults do 
                                    if Result.Parent then 
                                          for Index, Value in Result.Parent do 
                                                if Value == "PVAdornment" or Value == "HandleAdornment" then 
                                                      --// Chams bypass
                                                      Result.Parent[Index] = "PartAdornment";
                                                      --print("Part adornment DTC:", Result.Parent)
                                                end;
                                          end;
                                    end;
                              end;
                        end;

                        if OutdoorResults then 
                              for I, Result in OutdoorResults do 
                                    if Result.Parent then 
                                          for Index, Value in Result.Parent do 
                                                if Value == "OutdoorAmbient" then 
                                                      --// Ambient Detection 1
                                                      Result.Parent[Index] = "ColorShift_Bottom";
                                                      --print("Ambient DTC:", Result.Parent)
                                                end;
                                          end;
                                    end;
                              end;
                        end;

                        if BrightnessResults then 
                              for BrighnessIndex, Result in BrightnessResults do 
                              local Parent = Result.Parent; 
                                    if Parent then 
                                          for Index, Value in Result.Parent do 
                                                if Value == 2.001 then 
                                                      --// Brightness detection
                                                      Result.Parent[Index] = 100
                                                      --print("Brightness DTC:", Result.Parent)
                                                end;

                                                if Value == 2.079 then 
                                                      --// Haze detection 1
                                                      Result.Parent[Index] = -0.1;
                                                      --print("Haze DTC:", Result.Parent)
                                                end;
                                          end;
                                    end;
                              end;	
                        end;

                        if FOVResults then 
                              for FOVIndex, FOVResult in FOVResults do 
                                    if FOVResult and type(FOVResult.Parent) == "table" then 
                                          for Index, Value in FOVResult.Parent do 
                                                if Value == 104 or Value == 105 then
                                                      --// FOV detection
                                                      FOVResult.Parent[Index] = 121
                                                      --print("FOV DTC:", FOVResult.Parent)
                                                end;
                                          end;
                                    end;
                              end;
                        end;

                        if WalkspeedResults then 
                              for WalkspeedIndex, Result in WalkspeedResults do 
                                    local Parent = Result.Parent; 
                                    if Parent and type(Parent) == "table" then 
                                          for Index, Value in Result.Parent do 
                                                if Value == 18.01 then 
                                                      --// Walkspeed detection
                                                      Result.Parent[Index] = 50;
                                                      --print("WalkSpeed DTC:", Result.Parent)
                                                end;
                                          end;
                                    end;
                              end;
                        end;

                        if HazeResults then 
                              for Index, Result in HazeResults do 
                                    local Parent = Result.Parent; 
                                    if Parent then 
                                          for Index, Value in Result.Parent do 
                                                if Value == 2.079 then 
                                                      --// Haze detection 2
                                                      Result.Parent[Index] = -0.1;
                                                      --print("Haze DTC:", Result.Parent)
                                                end;
                                          end;
                                    end;
                              end;	
                        end;
                        ]]
			end;
		end;

		Log("All bypassed loaded!")
	end
end)();

if (not game:IsLoaded()) then
      game.Loaded:Wait();
end;

task.wait(3); -- mainstreamed, why are we waiting?

local LoaderLaunched = false;

local Game = "Universal";
local HookingEnabled = true;
local Name = "Iridescent";

local Directory = "Iridescent";
local ConfigsFolder = Directory.."/Configs";
local DumpsFolder = Directory.."/Dumps";
local ImagesFolder = Directory.."/Images";
local DebugFolder = Directory.."/Debug";
local Fonts = {};
local ImageDirectory = "https://raw.githubusercontent.com/mainstreamed/clones/refs/heads/main/iridescent/";

--#region Folders
makefolder(Directory);
makefolder(ConfigsFolder);
makefolder(DumpsFolder);
makefolder(ImagesFolder);
makefolder(DebugFolder);
Log("Loaded folders..")
--#endregion Folders

-- for the custom derek images ( obfuscation gets fucked )
local CustomImageOverwrite = loadstring(game:HttpGet('https://raw.githubusercontent.com/mainstreamed/clones/refs/heads/main/iridescent/customAssets.lua'))();

local RequestImage = LPH_NO_VIRTUALIZE(function(Name)

      -- image overwrite
      if (CustomImageOverwrite[Name]) then
            writefile(ImagesFolder.."/"..Name..".png", crypt.base64.decode(CustomImageOverwrite[Name]));
            return;
      end


	local URL = ImageDirectory..Name..".png";
	local Request = request({
		Url = URL,
		Method = "GET",
		Headers = {
			["content-type"] = "application/json"
		}
	});

	if Request.StatusCode == 200 then
		writefile(ImagesFolder.."/"..Name..".png", Request.Body)
		Log("Successfully requested image: "..Name)
	else
		Log("Failed to request image: "..Name)
	end;
end);

--// Images, Fonts
LPH_NO_VIRTUALIZE(function()
	--// Font
	Font = getcustomasset and setreadonly(Font, false) or Font;
	if getcustomasset then 
		function Font:Register(Name, Weight, Style, Asset)
			if not isfile(Asset.Id) then
				writefile(Asset.Id, Asset.Font);
			end;

			local Data = {
				name = Name,
				faces = {
					{
						name = "Regular",
						weight = Weight,
						style = Style,
						assetId = getcustomasset(Asset.Id);
					}
				};
			};

			writefile(Name .. ".font", cloneref(game.GetService(game, "HttpService")):JSONEncode(Data));
			return getcustomasset(Name .. ".font");
		end;

		function Font:GetRegistry(Name)
			if isfile(Name .. ".font") then
				return getcustomasset(Name .. ".font");
			end;
		end;
	end;

	Font = getcustomasset and setreadonly(Font, true) or Font;

	local function RegisterFont(Name, Weight, Style, Asset)
		if getcustomasset then 
			return Font.new(Font:Register(Name, Weight, Style, Asset));
		else 
			return Font.new("rbxasset://fonts/families/Ubuntu.json", Enum.FontWeight.Bold);
		end;
	end;

	local MinecraftBase64 = "AAEAAAANAIAAAwBQRFNJRwAAAAEAAQX0AAAACEdERUYDBAAkAAEF/AAAAChPUy8y1NZFSAAAANwAAABgY21hcNZo3swAAQp8AAAIOGdhc3AAAAADAAEF7AAAAAhnbHlmEGqBuwAAGjgAANTQaGVhZAZHGCYAAPpgAAAANmhoZWERQQ7WAAAZ9AAAACRobXR4Ywj7gAAA+pgAAAtUbG9jYQEl1TwAAO8IAAALWG1heHAC4wA8AAAaGAAAACBuYW1lomnC7QABBiQAAARWcG9zdN5ON9IAAAE8AAAYuAADBGEBkAAFAAQDAAMAAAABgAMAAwAAAAMAAEwBMgAAAAAEAAAAAAAAAKAAAL9AAGB7AAAAAAAAAABGU1RSAEAAIPsCCQADAAAACoD9wAAAAf8AAAAAB4AJAAAAACAAAQACAAAAAAAAAJgATAAAAAAAAAAAAAAAAAAAAAAAAAAAAtUAAAABAAIAAwAEAAUABgAHAAgACQAKAAsADAANAA4ADwAQABEAEgATABQAFQAWABcAGAAZABoAGwAcAB0AHgAfACAAIQAiACMAJAAlACYAJwAoACkAKgArACwALQAuAC8AMAAxADIAMwA0ADUANgA3ADgAOQA6ADsAPAA9AD4APwBAAEEAQgBDAEQARQBGAEcASABJAEoASwBMAE0ATgBPAFAAUQBSAFMAVABVAFYAVwBYAFkAWgBbAFwAXQBeAF8AYABhAKMAhACFAL0AlgDoAIYAjgCLAJ0AqQCkAIoA2gCDAJMA8gDzAI0AlwCIAMMA3gDxAJ4AqgD1APQA9gCiAK0AyQDHAK4AYgBjAJAAZADLAGUAyADKAM8AzADNAM4A6QBmANMA0ADRAK8AZwDwAJEA1gDUANUAaADrAO0AiQBqAGkAawBtAGwAbgCgAG8AcQBwAHIAcwB1AHQAdgB3AOoAeAB6AHkAewB9AHwAuAChAH8AfgCAAIEA7ADuALoBAgEDAQQBBQEGAQcA/QD+AQgBCQEKAQsA/wEAAQwBDQEOAQEBDwEQAREBEgETARQBFQEWARcBGAEZARoA+AD5ARsBHAEdAR4BHwEgASEBIgEjASQBJQEmAScBKAEpASoA+gDXASsBLAEtAS4BLwEwATEBMgEzATQBNQE2ATcBOAE5AOIA4wE6ATsBPAE9AT4BPwFAAUEBQgFDAUQBRQFGAUcBSACwALEBSQFKAUsBTAFNAU4BTwFQAVEBUgD7APwA5ADlAVMBVAFVAVYBVwFYAVkBWgFbAVwBXQFeAV8BYAFhAWIBYwFkAWUBZgFnAWgAuwFpAWoBawFsAOYA5wFtAW4BbwFwAKYBcQFyAXMBdAF1AXYBdwF4AXkBegF7AXwBfQF+AX8BgAGBAYIBgwGEAYUBhgGHAYgBiQGKANgA4QGLAYwBjQDbANwA3QDgANkA3wGOAY8BkAGRAZIBkwGUAZUBlgGXAZgBmQGaAZsBnAGdAZ4BnwGgAaEBogGjAaQBpQGmAacBqAGpAaoBqwGsAa0BrgGvAbABsQGyAJ8BswG0AbUBtgG3AbgBuQG6AbsBvAG9Ab4BvwHAAcEBwgHDAcQBxQHGAccByACbAckBygHLAcwBzQHOAc8B0AHRAdIB0wHUAdUB1gHXAdgB2QHaAdsB3AHdAd4B3wHgAeEB4gHjAeQB5QHmAecB6AHpAeoB6wHsAe0B7gHvAfAB8QHyAfMB9AH1AfYB9wH4AfkB+gH7AfwB/QH+Af8CAAIBAgICAwIEAgUCBgIHAggCCQIKAgsCDAINAg4CDwIQAhECEgITAhQCFQIWAhcCGAIZAhoCGwIcAh0CHgIfAiACIQIiAiMCJAIlAiYCJwIoAikCKgIrAiwCLQIuAi8CMAIxAjICMwI0AjUCNgI3AjgCOQI6AjsCPAI9Aj4CPwJAAkECQgJDAkQCRQJGAkcCSAJJAkoCSwJMAk0CTgJPAlACUQJSAlMCVAJVAlYCVwJYAlkCWgJbAlwCXQJeAl8CYAJhAmICYwJkAmUCZgJnAmgCaQJqAmsCbAJtAm4CbwJwAnECcgJzAnQCdQJ2AncCeAJ5AnoCewJ8An0CfgJ/AoACgQKCAoMChAKFAoYChwKIAokCigC2ALcAxAKLALQAtQDFAowAggDCAIcCjQCrAMYCjgKPApACkQC+AL8AvAKSApMClAKVApYClwKYApkCmgKbApwCnQKeAp8CoAKhAqICowKkAqUCpgKnAqgCqQKqAqsCrAKtAq4CrwKwAIwCsQKyArMCtAK1ArYCtwK4ArkCugK7ArwCvQK+Ar8CwALBAsICwwLEAsUCxgLHAsgCyQLKAssAqAClAJIAnALMAKcAjwCUAJUCzQLOAs8C0ALRAtIC0wLUAtUC1gLXAtgC2QLaAtsC3ALdAt4AwADBB0FtYWNyb24HYW1hY3JvbgZBYnJldmUGYWJyZXZlB0FvZ29uZWsHYW9nb25lawtDY2lyY3VtZmxleAtjY2lyY3VtZmxleARDZG90BGNkb3QGRGNhcm9uBmRjYXJvbgZEY3JvYXQHRW1hY3JvbgdlbWFjcm9uBkVicmV2ZQZlYnJldmUERWRvdARlZG90B0VvZ29uZWsHZW9nb25lawZFY2Fyb24GZWNhcm9uC0djaXJjdW1mbGV4C2djaXJjdW1mbGV4BEdkb3QEZ2RvdAhHY2VkaWxsYQhnY2VkaWxsYQtIY2lyY3VtZmxleAtoY2lyY3VtZmxleARIYmFyBGhiYXIGSXRpbGRlBml0aWxkZQdJbWFjcm9uB2ltYWNyb24GSWJyZXZlBmlicmV2ZQdJb2dvbmVrB2lvZ29uZWsCSUoCaWoLSmNpcmN1bWZsZXgLamNpcmN1bWZsZXgIS2NlZGlsbGEIa2NlZGlsbGEMa2dyZWVubGFuZGljBkxhY3V0ZQZsYWN1dGUITGNlZGlsbGEIbGNlZGlsbGEGTGNhcm9uBmxjYXJvbgRMZG90BGxkb3QGTmFjdXRlBm5hY3V0ZQhOY2VkaWxsYQhuY2VkaWxsYQZOY2Fyb24GbmNhcm9uC25hcG9zdHJvcGhlA0VuZwNlbmcHT21hY3JvbgdvbWFjcm9uBk9icmV2ZQZvYnJldmUJT2RibGFjdXRlCW9kYmxhY3V0ZQZSYWN1dGUGcmFjdXRlCFJjZWRpbGxhCHJjZWRpbGxhBlJjYXJvbgZyY2Fyb24GU2FjdXRlBnNhY3V0ZQtTY2lyY3VtZmxleAtzY2lyY3VtZmxleAhUY2VkaWxsYQh0Y2VkaWxsYQZUY2Fyb24GdGNhcm9uBFRiYXIEdGJhcgZVdGlsZGUGdXRpbGRlB1VtYWNyb24HdW1hY3JvbgZVYnJldmUGdWJyZXZlBVVyaW5nBXVyaW5nCVVkYmxhY3V0ZQl1ZGJsYWN1dGUHVW9nb25lawd1b2dvbmVrC1djaXJjdW1mbGV4C3djaXJjdW1mbGV4C1ljaXJjdW1mbGV4C3ljaXJjdW1mbGV4BlphY3V0ZQZ6YWN1dGUEWmRvdAR6ZG90BWxvbmdzB0J0b3BiYXIHYnRvcGJhcgVTY2h3YQdac3Ryb2tlB3pzdHJva2UDRXpoB0dzdHJva2UHZ3N0cm9rZQZHY2Fyb24GZ2Nhcm9uBktjYXJvbgZrY2Fyb24HT29nb25lawdvb2dvbmVrCEV6aGNhcm9uCGV6aGNhcm9uCkFyaW5nYWN1dGUKYXJpbmdhY3V0ZQdBRWFjdXRlB2FlYWN1dGULT3NsYXNoYWN1dGULb3NsYXNoYWN1dGUMU2NvbW1hYWNjZW50DHNjb21tYWFjY2VudAtUY29tbWFiZWxvdwt0Y29tbWFiZWxvdwhkb3RsZXNzagVzY2h3YQNlemgQZmlyc3R0b25lY2hpbmVzZRFzZWNvbmR0b25lY2hpbmVzZRFmb3VydGh0b25lY2hpbmVzZRBudW1lcmFsc2lnbmdyZWVrFW51bWVyYWxzaWdubG93ZXJncmVlaw1xdWVzdGlvbmdyZWVrBXRvbm9zDmRpYWx5dGlrYXRvbm9zCkFscGhhdG9ub3MJYW5vdGVsZWlhDEVwc2lsb250b25vcwhFdGF0b25vcwlJb3RhdG9ub3MMT21pY3JvbnRvbm9zDFVwc2lsb250b25vcwpPbWVnYXRvbm9zEWlvdGFkaWVyZXNpc3Rvbm9zBUFscGhhBEJldGEFR2FtbWEKRGVsdGFncmVlawdFcHNpbG9uBFpldGEDRXRhBVRoZXRhBElvdGEFS2FwcGEGTGFtYmRhAk11Ak51AlhpB09taWNyb24CUGkDUmhvBVNpZ21hA1RhdQdVcHNpbG9uA1BoaQNDaGkDUHNpDElvdGFkaWVyZXNpcw9VcHNpbG9uZGllcmVzaXMKYWxwaGF0b25vcwxlcHNpbG9udG9ub3MIZXRhdG9ub3MJaW90YXRvbm9zFHVwc2lsb25kaWVyZXNpc3Rvbm9zBWFscGhhBGJldGEFZ2FtbWEFZGVsdGEHZXBzaWxvbgR6ZXRhA2V0YQV0aGV0YQRpb3RhBWthcHBhBmxhbWJkYQdtdWdyZWVrAm51AnhpB29taWNyb24DcmhvBnNpZ21hMQVzaWdtYQN0YXUHdXBzaWxvbgNwaGkDY2hpA3BzaQVvbWVnYQxpb3RhZGllcmVzaXMPdXBzaWxvbmRpZXJlc2lzDG9taWNyb250b25vcwx1cHNpbG9udG9ub3MKb21lZ2F0b25vcwd1bmkwM0Q3B3VuaTA0MDAJYWZpaTEwMDIzCWFmaWkxMDA1MQlhZmlpMTAwNTIJYWZpaTEwMDUzCWFmaWkxMDA1NAlhZmlpMTAwNTUJYWZpaTEwMDU2CWFmaWkxMDA1NwlhZmlpMTAwNTgJYWZpaTEwMDU5CWFmaWkxMDA2MAlhZmlpMTAwNjEHdW5pMDQwRAlhZmlpMTAwNjIJYWZpaTEwMTQ1CUFjeXJpbGxpYwlhZmlpMTAwMTgJYWZpaTEwMDE5CWFmaWkxMDAyMAlhZmlpMTAwMjEJYWZpaTEwMDIyCWFmaWkxMDAyNAlhZmlpMTAwMjUJYWZpaTEwMDI2CWFmaWkxMDAyNwlhZmlpMTAwMjgJYWZpaTEwMDI5CWFmaWkxMDAzMAlhZmlpMTAwMzEJYWZpaTEwMDMyCWFmaWkxMDAzMwlhZmlpMTAwMzQJYWZpaTEwMDM1CWFmaWkxMDAzNglhZmlpMTAwMzcJYWZpaTEwMDM4CWFmaWkxMDAzOQlhZmlpMTAwNDAJYWZpaTEwMDQxCWFmaWkxMDA0MglhZmlpMTAwNDMJYWZpaTEwMDQ0CWFmaWkxMDA0NQlhZmlpMTAwNDYJYWZpaTEwMDQ3CWFmaWkxMDA0OAlhZmlpMTAwNDkJYWN5cmlsbGljCWFmaWkxMDA2NglhZmlpMTAwNjcJYWZpaTEwMDY4CWFmaWkxMDA2OQlhZmlpMTAwNzAJYWZpaTEwMDcyCWFmaWkxMDA3MwlhZmlpMTAwNzQJYWZpaTEwMDc1CWFmaWkxMDA3NglhZmlpMTAwNzcJYWZpaTEwMDc4CWFmaWkxMDA3OQlhZmlpMTAwODAJYWZpaTEwMDgxCWFmaWkxMDA4MglhZmlpMTAwODMJYWZpaTEwMDg0CWFmaWkxMDA4NQlhZmlpMTAwODYJYWZpaTEwMDg3CWFmaWkxMDA4OAlhZmlpMTAwODkJYWZpaTEwMDkwCWFmaWkxMDA5MQlhZmlpMTAwOTIJYWZpaTEwMDkzCWFmaWkxMDA5NAlhZmlpMTAwOTUJYWZpaTEwMDk2CWFmaWkxMDA5Nwd1bmkwNDUwCWFmaWkxMDA3MQlhZmlpMTAwOTkJYWZpaTEwMTAwCWFmaWkxMDEwMQlhZmlpMTAxMDIJYWZpaTEwMTAzCWFmaWkxMDEwNAlhZmlpMTAxMDUJYWZpaTEwMTA2CWFmaWkxMDEwNwlhZmlpMTAxMDgJYWZpaTEwMTA5B3VuaTA0NUQJYWZpaTEwMTEwCWFmaWkxMDE5MwlhZmlpMTAxNDYJYWZpaTEwMTk0CWFmaWkxMDE0NwlhZmlpMTAxOTUJYWZpaTEwMTQ4CWFmaWkxMDE5Ngd1bmkwNDhBB3VuaTA0OEIHdW5pMDQ4Qwd1bmkwNDhEB3VuaTA0OEUHdW5pMDQ4RglhZmlpMTAwNTAJYWZpaTEwMDk4EUdoZXN0cm9rZWN5cmlsbGljEWdoZXN0cm9rZWN5cmlsbGljFFpoZWRlc2NlbmRlcmN5cmlsbGljFHpoZWRlc2NlbmRlcmN5cmlsbGljE1plZGVzY2VuZGVyY3lyaWxsaWMTemVkZXNjZW5kZXJjeXJpbGxpYxNLYWRlc2NlbmRlcmN5cmlsbGljE2thZGVzY2VuZGVyY3lyaWxsaWMYS2F2ZXJ0aWNhbHN0cm9rZWN5cmlsbGljGGthdmVydGljYWxzdHJva2VjeXJpbGxpYxFLYWJhc2hraXJjeXJpbGxpYxFrYWJhc2hraXJjeXJpbGxpYxNFbmRlc2NlbmRlcmN5cmlsbGljE2VuZGVzY2VuZGVyY3lyaWxsaWMTRXNkZXNjZW5kZXJjeXJpbGxpYxNlc2Rlc2NlbmRlcmN5cmlsbGljEVVzdHJhaWdodGN5cmlsbGljEXVzdHJhaWdodGN5cmlsbGljF1VzdHJhaWdodHN0cm9rZWN5cmlsbGljF3VzdHJhaWdodHN0cm9rZWN5cmlsbGljE0hhZGVzY2VuZGVyY3lyaWxsaWMTaGFkZXNjZW5kZXJjeXJpbGxpYxRDaGVkZXNjZW5kZXJjeXJpbGxpYxRjaGVkZXNjZW5kZXJjeXJpbGxpYxlDaGV2ZXJ0aWNhbHN0cm9rZWN5cmlsbGljGWNoZXZlcnRpY2Fsc3Ryb2tlY3lyaWxsaWMMU2hoYWN5cmlsbGljDHNoaGFjeXJpbGxpYxBwYWxvY2hrYWN5cmlsbGljEFpoZWJyZXZlY3lyaWxsaWMQemhlYnJldmVjeXJpbGxpYwd1bmkwNEM1B3VuaTA0QzYORW5ob29rY3lyaWxsaWMOZW5ob29rY3lyaWxsaWMHdW5pMDRDOQd1bmkwNENBB3VuaTA0Q0QHdW5pMDRDRQd1bmkwNENGEUFkaWVyZXNpc2N5cmlsbGljEWFkaWVyZXNpc2N5cmlsbGljC0FpZWN5cmlsbGljC2FpZWN5cmlsbGljDVNjaHdhY3lyaWxsaWMJYWZpaTEwODQ2D0ltYWNyb25jeXJpbGxpYw9pbWFjcm9uY3lyaWxsaWMRSWRpZXJlc2lzY3lyaWxsaWMRaWRpZXJlc2lzY3lyaWxsaWMRT2RpZXJlc2lzY3lyaWxsaWMRb2RpZXJlc2lzY3lyaWxsaWMPT2JhcnJlZGN5cmlsbGljD29iYXJyZWRjeXJpbGxpYwd1bmkwNEVDB3VuaTA0RUQPVW1hY3JvbmN5cmlsbGljD3VtYWNyb25jeXJpbGxpYxFVZGllcmVzaXNjeXJpbGxpYxF1ZGllcmVzaXNjeXJpbGxpYwZXZ3JhdmUGd2dyYXZlBldhY3V0ZQZ3YWN1dGUJV2RpZXJlc2lzCXdkaWVyZXNpcwd1bmkxRTlFBllncmF2ZQZ5Z3JhdmURcXVvdGVsZWZ0cmV2ZXJzZWQHdW5pMjAxRgd1bmkyMDIzBm1pbnV0ZQZzZWNvbmQNcHJpbWVyZXZlcnNlZAd1bmkyMDM2DHplcm9zdXBlcmlvcgd1bmkyMDcxDGZvdXJzdXBlcmlvcgxmaXZlc3VwZXJpb3ILc2l4c3VwZXJpb3INc2V2ZW5zdXBlcmlvcg1laWdodHN1cGVyaW9yDG5pbmVzdXBlcmlvcgx6ZXJvaW5mZXJpb3ILb25laW5mZXJpb3ILdHdvaW5mZXJpb3INdGhyZWVpbmZlcmlvcgxmb3VyaW5mZXJpb3IMZml2ZWluZmVyaW9yC3NpeGluZmVyaW9yDXNldmVuaW5mZXJpb3INZWlnaHRpbmZlcmlvcgxuaW5laW5mZXJpb3IDd29uBEV1cm8HdW5pMjBBRQd1bmkyMEIxB3VuaTIwQjQHdW5pMjBCOAd1bmkyMEI5B3VuaTIwQkEJYWZpaTYxMjQ4CWFmaWk2MTI4OQlhZmlpNjEzNTIHdW5pMjExNwd1bmkyMTIwCWVzdGltYXRlZAd1bmkyMTUwB3VuaTIxNTEHdW5pMjE1MghvbmV0aGlyZAl0d290aGlyZHMHdW5pMjE1NQd1bmkyMTU2B3VuaTIxNTcHdW5pMjE1OAd1bmkyMTU5B3VuaTIxNUEJb25lZWlnaHRoDHRocmVlZWlnaHRocwtmaXZlZWlnaHRocwxzZXZlbmVpZ2h0aHMJYXJyb3dsZWZ0B2Fycm93dXAKYXJyb3dyaWdodAlhcnJv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wMDAwMABgP6AwAGA/oDAwMDAwMDAwAAAAAQAAAPAA8AJwAADAAkADQARAAARETMRFTUhETMRATUzFSU1MxXAAkDA/cDA/oDABIADAP0AwMADAPxABIDAwMDAwAAABAAAA8ADwAnAAAMACQANABEAABERMxEVNSERMxEBNTMVNTUzFcACQMD9wMDABIADAP0AwMADAPxABIDAwMDAwAAAAAAFAAADwAPACcAAAwAJAA0AEQAVAAARETMRFTUhETMRATUzFTM1MxUlNTMVwAJAwP0AwMDA/oDABIADAP0AwMADAPxABIDAwMDAwMDAAAAAAAQAAAPAA8AJAAADAAkADQARAAARETMRFTUhETMRATUzFTM1MxXAAkDA/QDAwMAEgAMA/QDAwAMA/EAEgMDAwMAAAAAABQAAAwADwAnAAAMABwAPABMAFwAAETUhFQERMxEBNSE1IREzEQE1MxU1NTMVAwD9AMACQP3AAkDA/cDAwAMAwMACQAJA/cD+gMDAAkD8QASAwMDAwMAAAAMAAAMAA8AJAAADAAcAEwAAAREzEQE1IRUBETMRMxUjFSEVIREDAMD9wAGA/QDAwMACQP3ABUABgP6AAYDAwPxABgD9wMDAwP6AAAADAAADAAPAB4AAAwAHAA8AABE1IRUBETMRATUhNSERMxEDAP0AwAJA/cACQMADAMDAAkACQP3A/oDAwAJA/EAAAwAAA8ADwAqAAAsADwATAAARETMVITUzESMRIRERNSEVATUhFcACQMDA/cACQP3AAkADwASAwMD7gAMA/QAEgMDAAYDAwAAABAAAA8ADwAkAAAMADQARABUAABE1MxUVNSE1ITUhNTMRATUhFQE1IRXAAkD9wAJAwP0AAkD9wAJABIDAwMDAwMDA/QADAMDAAYDAwAAAAAACAAADwAPACoAACwATAAARETMVITUzESMRIRERETMVMzUzEcACQMDA/cDAwMADwASAwMD7gAMA/QAEgAJAwMD9wAAAAAQAAAPAA8AJwAADAA0AEQAZAAARNTMVFTUhNSE1ITUzEQE1IRUBETMVMzUzEcACQP3AAkDA/QACQP3AwMDABIDAwMDAwMDA/QADAMDAAYABgMDA/oAAAAADAAACQAPACQAABQARABUAAAERMxUzFQERMxUhNTMRIxEhERE1IRUCQMDA/EDAAkDAwP3AAkAC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AAAAAAADAAADAAPAB4AABwALAA8AABERMxEhFSERAREzEQE1IRXAAkD9wAJAwP0AAkADAAPA/oDA/oACQAGA/oABgMDAAAAAAAQAAAMAA8AHgAADAAcACwAPAAABETMRATUhFSURMxERNSEVAwDA/QACQP0AwAMAAwABgP6AAYDAwMABgP6AAYDAwAAAAwAAA8ADwAeAAAMABwAPAAATNSEVJREzESERITUhFSMRwAGA/cDAAYD+gAMAwAPAwMDAAkD9wAJAwMD9wAAAAAEAAAPAA8AHgAAHAAABESE1IRUhEQGA/oADwP6AA8ADAMDA/QAAAAADAAADwAPAB4AAAwAHAAsAABM1IRUlETMRIREzEcACQP0AwAJAwAPAwMDAAwD9AAMA/QAAAwAAAwADwAeAAAMABwAVAAABETMRIREzERMRIzUzESEVIxEzFSMRAwDA/EDAwMDAAYDAwMAFQAGA/oACQP3A/cABgMACQMD+gMD+gAAAAAAJAAADAAPAB4AAAwAHAAsADwATABcAGwAfACMAABERMxEhETMRATUzFTM1MxUlNTMVJTUzFTM1MxUlNTMVITUzFcACQMD9AMDAwP6AwP6AwMDA/QDAAkDAAwABgP6AAYD+gAGAwMDAwMDAwMDAwMDAwMDAwMAAAAADAAADAAPAB4AAAwAPABMAABERMxETESM1MxEzETMVIxETETMRwMDAwMDAwMDABUACQP3A/cABgMACQP3AwP6AAkACQP3AAAAFAAADwAPAB4AAAwAHAAsADwATAAATNTMVMzUzFSURMxEhETMRIREzEcDAwMD+gMD9wMACQMADwMDAwMDAAYD+gAMA/QADAP0AAAAAAwAAA8ACQAkAAAMABwALAAATETMRATUzFTM1MxXAwP6AwMDAA8ADwPxABIDAwMDAAAAAAAUAAAPAA8AJAAADAAcACwAPABMAABM1IRUlETMRIREzEQE1MxUzNTMVwAJA/QDAAkDA/QDAwMADwMDAwAMA/QADAP0AA8DAwMDAAAAEAAADwAPAB4AAAwAHAAsADwAAEzUhFSURMxEhETMRATUhFcACQP0AwAJAwP0AAkADwMDAwAJA/cACQP3AAkDAwAAAAAQAAAPAA8AJwAADAAcACwAPAAATNSEVJREzESERMxEBETMRwAJA/QDAAkDA/cDAA8DAwMADAP0AAwD9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AADDrAAAxEAAAMTIAADFYAAAxggAAMacAADHOAAAx9gAAMhwAADIyAAAySAAAMl4AADJ1AAAyjwAAMqoAADLDAAAy2QAAMvIAADMJAAAzMwAAM0YAADNdAAAzdwAAM4MAADOPAAAzqgAAM7sAADPRAAAz5wAAM+4AADP4AAA0AwAANBUAADQhAAA0NQAANFIAADRhAAA0eQAANI0AADSYAAA0pwAANLoAADTLAAA03AAANPMAADUBAAA1DwAANSEAADU0AABAAAAAgAANpQQ/l8PPPUACwYAAAAAANA0HEwAAAAA0DOsHP6AAkAIQAqAAAAACAACAAEAAAAAAYAAAAAAAAABgAAAAYAAAAGAAAADAAAABIAAAASAAAAEgAAABIAAAAGAAAADwAAAA8AAAAPAAAAEgAAAAYAAAASAAAABgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAABgAAAAYAAAAPAAAAEgAAAA8AAAASAAAAFQAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAADAAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAADAAAABIAAAAMAAAAEgAAABIAAAAJAAAAEgAAABIAAAASAAAAEgAAABIAAAAPAAAAEgAAABIAAAAGAAAAEgAAAA8AAAAJAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAAAwAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAAPAAAABgAAAA8AAAAVAAAABgAAAA8AAAASAAAAEgAAABIAAAAGAAAAEgAAAA8AAwAYAAAADAAAAA8AAAAPAAAAGAAAABIAAAAMAAAAEgAAAAwAAAAMAAAACQAAABIAAAASAAAABgAAAAwAAwAMAAAADAAAAA8AAAAbAAAAGwAAABsAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAHgAAABIAAAASAAAAEgAAABIAAAASAAAADAAAAAwAAAAMAAAADAAAABUAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAAPAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAAeAAAAEgAAABIAAAASAAAAEgAAABIAAAAGA/0ACQAAAAkD/QAJA/0AEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABgAAAAVAAAAFQAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABUAAAAPA/0ADwP9AAwAAAAJA/0ADAAAAAkD/QAMAAAACQAAAAwAAAAGAAAAHgAAABgAAAASAAAAFQAAABIAAAAPAAAADwAAABIAAAAJAAAAEgAAAAkAAAASAAAADAAAABIAAAAMAAAAFQAAAAwAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAAYAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAAeAAAAHgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAAAwAAAASAAAAEgAAABIAAAAMAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAAPAAAAEgAAAA8AAAASAAAAEgAAABIAAAASAAAAEgAAABUAAAAVAAAAEgAAABIAAAASAAAADwAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAAB4AAAAeAAAAEgAAABIAAAASAAAAEgAAABIAAAAMAAAAEgAAABIAAAASAAAADAAAAAwAAAAMAAAACQAAAAkAAAAMAAAACQADAAwAAAAJAAAAEgAAAA8AAAAJAAAACQAAAAYAAAAGAAAAEgAAABgAAAAGAAAAGAAAABgAAAASAAAAGAAAABgAAAAYAAAADwP9ABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAADAAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAAAwAAAASAAAAEgAAABIAAAASAAAABgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAADwAAAAYAAAAPAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAADAAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAAVAAAAEgAAABIAAAASAAAADAAAAAwAAAASAAAAHgAAAB4AAAAVAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAAVAAAAEgAAABIAAAAVAAAAFQAAABgAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAAA8AAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAAYAAAAEgAAABUAAAASAAAAEgAAABUAAAASAAAAFQAAAA8AAAASAAAAEgAAABIAAAASAAAAEgAAABUAAAASAAAAEgAAABIAAAAGAAAADAAAABIAAAAbAAAAGwAAABUAAAAPAAAAEgAAABIAAAASAAAAFQAAABUAAAASAAAAEgAAABIAAAASAAAAFQAAABUAAAAVAAAAEgAAABIAAAASAAAAEgAAABIAAAAVAAAAFQAAABUAAAAVAAAAEgAAABIAAAAVAAAADwAAABIAAAASAAAAFQAAABIAAAAVAAAAFQAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABUAAAAVAAAAFQAAABUAAAASAAAAEgAAABIAAAASAAAABgAAABIAAAASAAAAFQAAABUAAAASAAAAEgAAABUAAAAVAAAAFQAAABIAAAAGAAAAEgAAABIAAAAeAAAAHgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAAJAAAACQAAAAkAAAAJAAAADwAAAA8AAAAPAAAADwAAAAwAAAAMAAAACQAAAAwAAAASAAAAGAAAAAwAAAASAAAADAAAABIAAAAJAAAACQAAAAwD+gAMAAAABgAAAAwAAAAMAAAADAAAAAwAAAAMAAAADAAAAAwAAAAMAAAADAAAAAwAAAAMAAAADAAAAAwAAAAMAAAADAAAAAwAAAASAAAAEgAAABIAAAASAAAAEgAAABIAAAASAAAAEgAAABgAAAAPAAAAGwAAABgAAAAYAAAAGAAAABUAAAAbAAAAGwAAACQAAAAbAAAAGwAAABsAAAAbAAAAGwAAABsAAAAbAAAAGwAAABsAAAAbAAAAGwAAABsAAAAYAAAAGAAAABgAAAAYAAAAGAAAABUAAwAYAAAAGAAAABgAAAAYAAAAGAAAABIAAAAbAAAAGAAAABIAAAASAAAAFQAAABIAAAAVAAAAFQAAAAwAAAAMAAAAEgAAABIAAAAPAAAADwAAABUAAAAVAAAAEgAAABUAAAAPAAAAFQAAABUAAAAPAAAADwAAABIAAAAJAAAACQAAABUAAAAYAAAAAAQAB//8AAgAAAAEAAAAAAAEAAAAOAAAAGAAgAAAAAgABAAEC1AABAAQAAAACAAAAAQAAAAEAAAAAABoBPgABAAAAAAAAABsAAAABAAAAAAABAAsAGwABAAAAAAACAAcAJgABAAAAAAADAA8ALQABAAAAAAAEAA8APAABAAAAAAAFAAsASwABAAAAAAAGABMAVgABAAAAAAAIABYAaQABAAAAAAAJAAwAfwABAAAAAAALABYAiwABAAAAAAAMABYAoQABAAAAAAANACgAtwABAAAAAAATACkA3wADAAEECQAAADYBCAADAAEECQABABYBPgADAAEECQACAA4BVAADAAEECQADAB4BYgADAAEECQAEAB4BgAADAAEECQAFABYBngADAAEECQAGACYBtAADAAEECQAIACwB2gADAAEECQAJABgCBgADAAEECQALACwCHgADAAEECQAMACwCSgADAAEECQANAFACdgADAAEECQATAFICxkNvcHlyaWdodCBBbmRyZXcgVHlsZXIgMjAxNE1pbmVjcmFmdGlhUmVndWxhck1pbmVjcmFmdGlhIDIuME1pbmVjcmFmdGlhIDIuMFZlcnNpb24gMi4wTWluZWNyYWZ0aWEtUmVndWxhcmh0dHA6Ly9hbmRyZXd0eWxlci5uZXRBbmRyZXcgVHlsZXJodHRwOi8vYW5kcmV3dHlsZXIubmV0aHR0cDovL2FuZHJld3R5bGVyLm5ldENyZWF0aXZlIENvbW1vbnMgQXR0cmlidXRpb24gU2hhcmUgQWxpa2VGaXZlIGJpZyBxdWFja2luZyB6ZXBoeXJzIGpvbHQgbXkgd2F4IGJlZABDAG8AcAB5AHIAaQBnAGgAdAAgAEEAbgBkAHIAZQB3ACAAVAB5AGwAZQByACAAMgAwADEANABNAGkAbgBlAGMAcgBhAGYAdABpAGEAUgBlAGcAdQBsAGEAcgBNAGkAbgBlAGMAcgBhAGYAdABpAGEAIAAyAC4AMABNAGkAbgBlAGMAcgBhAGYAdABpAGEAIAAyAC4AMABWAGUAcgBzAGkAbwBuACAAMgAuADAATQBpAG4AZQBjAHIAYQBmAHQAaQBhAC0AUgBlAGcAdQBsAGEAcgBoAHQAdABwADoALwAvAGEAbgBkAHIAZQB3AHQAeQBsAGUAcgAuAG4AZQB0AEEAbgBkAHIAZQB3ACAAVAB5AGwAZQByAGgAdAB0AHAAOgAvAC8AYQBuAGQAcgBlAHcAdAB5AGwAZQByAC4AbgBlAHQAaAB0AHQAcAA6AC8ALwBhAG4AZAByAGUAdwB0AHkAbABlAHIALgBuAGUAdABDAHIAZQBhAHQAaQB2AGUAIABDAG8AbQBtAG8AbgBzACAAQQB0AHQAcgBpAGIAdQB0AGkAbwBuACAAUwBoAGEAcgBlACAAQQBsAGkAawBlAEYAaQB2AGUAIABiAGkAZwAgAHEAdQBhAGMAawBpAG4AZwAgAHoAZQBwAGgAeQByAHMAIABqAG8AbAB0ACAAbQB5ACAAdwBhAHgAIABiAGUAZAAAAAAAAwAAAAMAAAAeAAEAAAAAAyYAAwABAAAFMAAAAAQDCAAAAK4AgAAGAC4AfgCsAX8BgwGPAZIBtwHrAe8B/wIbAjcCWQKSAscCywLdA3UDfgOKA4wDoQPOA9cEXwRjBHUEkwSdBKMEqwSzBLsEwgTKBM8E1QTZBOkE8R6FHp4e8yAjICYgMCAzIDYgOiBEIHEgeSCJIKkgrCCuILEgtCC6IQUhEyEXISAhIiEuIV4hmSIG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"
	local SmallFontBase64 = "AAEAAAAMAIAAAwBAT1MvMmSz/H0AAAFIAAAAYFZETVhoYG/3AAAGmAAABeBjbWFwel+AIwAADHgAAAUwZ2FzcP//AAEAAGP4AAAACGdseWa90hIhAAARqAAARRRoZWFk/hqSzwAAAMwAAAA2aGhlYQegBbsAAAEEAAAAJGhtdHhmdgAAAAABqAAABPBsb2Nh73HeDAAAVrwAAAJ6bWF4cAFBADMAAAEoAAAAIG5hbWX/R4pVAABZOAAABC1wb3N0fPqooAAAXWgAAAaOAAEAAAABAAArGZw2Xw889QAJA+gAAAAAzSamLgAAAADNJqljAAD/OASwAyAAAAAJAAIAAAAAAAAAAQAAAu7/BgAABRQAAABkBLAAAQAAAAAAAAAAAAAAAAAAATwAAQAAATwAMgAEAAAAAAABAAAAAAAAAAAAAAAAAAAAAAADAfMBkAAFAAACvAKKAAD/nAK8AooAAAD6ADIA+gAAAgAAAAAAAAAAAIAAAi8AAAAKAAAAAAAAAABQWVJTAEAAICEiAu7/BgAAAyAAyAAAAAUAAAAAAPoB9AAAACAAAAH0AAAAAAAAAfQAAAH0AAACWAAAAlgAAAJYAAAAyAAAAS0AAAEtAAABkAAAAZAAAAEsAAABkAAAAMgAAAJYAAAB9AAAAZAAAAH0AAAB9AAAAfQAAAH0AAAB9AAAAfQAAAH0AAAB9AAAAMgAAAEsAAABkAAAAZAAAAGQAAAB9AAAAfQAAAH0AAAB9AAAAfQAAAH0AAAB9AAAAfQAAAH0AAAB9AAAAZAAAAH0AAAB9AAAAfQAAAJYAAAB9AAAAfQAAAH0AAAB9AAAAfQAAAH0AAABkAAAAfQAAAGQAAACWAAAAfQAAAGQAAAB9AAAASwAAAJYAAABLAAAAlgAAAH0AAABLAAAAfQAAAH0AAAB9AAAAfQAAAH0AAAB9AAAAfQAAAH0AAABkAAAAfQAAAH0AAAB9AAAAlgAAAH0AAAB9AAAAfQAAAH0AAAB9AAAAfQAAAGQAAAB9AAAAZAAAAJYAAAB9AAAAZAAAAH0AAABkAAAAMgAAAGQAAAB9AAAAlgAAAH0AAABLAAAAfQAAAJYAAACWAAAAZAAAAGQAAACWAAAAyAAAAJYAAABkAAAAlgAAAH0AAACWAAAAZAAAAJYAAABLAAAASwAAAJYAAACWAAAASwAAAGQAAAB9AAAA4QAAAJYAAABkAAAAlgAAAH0AAACWAAAAZAAAAGQAAABkAAAAfQAAAH0AAAB9AAAAMgAAAH0AAAB9AAAAyAAAAH0AAACvAAAAfQAAAEsAAADIAAAAZAAAAGQAAABkAAAAZAAAAGQAAAB9AAAAlgAAAJYAAAAyAAAAfQAAAK8AAAB9AAAArwAAAH0AAAB9AAAAfQAAAGQAAAB9AAAAfQAAAH0AAAB9AAAAlgAAAH0AAACWAAAAfQAAAH0AAAB9AAAAfQAAAH0AAACWAAAAfQAAAH0AAAB9AAAAfQAAAH0AAABkAAAAfQAAAJYAAAB9AAAAlgAAAH0AAACWAAAArwAAAJYAAACvAAAAfQAAAH0AAACWAAAAfQAAAH0AAAB9AAAAfQAAAH0AAACWAAAAfQAAAJYAAAB9AAAAfQAAAH0AAAB9AAAAfQAAAJYAAAB9AAAAfQAAAH0AAAB9AAAAfQAAAGQAAAB9AAAAlgAAAH0AAACWAAAAfQAAAJYAAACvAAAAlgAAAK8AAAB9AAAAfQAAAJYAAAB9AAAAfQAAAH0AAAAyAAAAlgAAAH0AAABkAAAAZAAAAH0AAAB9AAAAfQAAAEsAAABkAAAAZAAAAH0AAAFFAAABRQAAAUUAAAB9AAAAfQAAAH0AAAB9AAAAfQAAAH0AAAB9AAAAlgAAAH0AAAB9AAAAfQAAAH0AAAB9AAAAZAAAAGQAAABkAAAAZAAAAJYAAAB9AAAAfQAAAH0AAAB9AAAAfQAAAH0AAABkAAAAlgAAAH0AAAB9AAAAfQAAAH0AAABkAAAAfQAAAH0AAAB9AAAAfQAAAH0AAAB9AAAAfQAAAH0AAACWAAAAfQAAAH0AAAB9AAAAfQAAAH0AAABkAAAAZAAAAGQAAABkAAAAlgAAAH0AAAB9AAAAfQAAAH0AAAB9AAAAfQAAAGQAAACWAAAAfQAAAH0AAAB9AAAAfQAAAGQAAAB9AAAAZAAAAJYAAACWAAAAfQAAAH0AAABkAAAAfQAAAH0AAAB9AAAAZAAAAH0AAACWAAAAMgAAAGQAAAAAAABAAEBAQEBAAwA+Aj/AAgAB//+AAkACP/+AAoACP/+AAsACf/9AAwACv/9AA0AC//9AA4ADP/9AA8ADP/9ABAADf/8ABEADv/8ABIAD//8ABMAEP/8ABQAEP/8ABUAEf/7ABYAEv/7ABcAE//7ABgAFP/7ABkAFP/7ABoAFf/6ABsAFv/6ABwAF//6AB0AGP/6AB4AGP/6AB8AGf/5ACAAGv/5ACEAG//5ACIAHP/5ACMAHP/5ACQAHf/4ACUAHv/4ACYAH//4ACcAIP/4ACgAIP/4ACkAIf/3ACoAIv/3ACsAI//3ACwAJP/3AC0AJP/3AC4AJf/2AC8AJv/2ADAAJ//2ADEAKP/2ADIAKP/2ADMAKf/1ADQAKv/1ADUAK//1ADYALP/1ADcALP/1ADgALf/0ADkALv/0ADoAL//0ADsAMP/0ADwAMP/0AD0AMf/zAD4AMv/zAD8AM//zAEAANP/zAEEANP/zAEIANf/yAEMANv/yAEQAN//yAEUAOP/yAEYAOP/yAEcAOf/xAEgAOv/xAEkAO//xAEoAPP/xAEsAPP/xAEwAPf/wAE0APv/wAE4AP//wAE8AQP/wAFAAQP/wAFEAQf/vAFIAQv/vAFMAQ//vAFQARP/vAFUARP/vAFYARf/uAFcARv/uAFgAR//uAFkASP/uAFoASP/uAFsASf/tAFwASv/tAF0AS//tAF4ATP/tAF8ATP/tAGAATf/sAGEATv/sAGIAT//sAGMAUP/sAGQAUP/sAGUAUf/rAGYAUv/rAGcAU//rAGgAVP/rAGkAVP/rAGoAVf/qAGsAVv/qAGwAV//qAG0AWP/qAG4AWP/qAG8AWf/pAHAAWv/pAHEAW//pAHIAXP/pAHMAXP/pAHQAXf/oAHUAXv/oAHYAX//oAHcAYP/oAHgAYP/oAHkAYf/nAHoAYv/nAHsAY//nAHwAZP/nAH0AZP/nAH4AZf/mAH8AZv/mAIAAZ//mAIEAaP/mAIIAaP/mAIMAaf/lAIQAav/lAIUAa//lAIYAbP/lAIcAbP/lAIgAbf/kAIkAbv/kAIoAb//kAIsAcP/kAIwAcP/kAI0Acf/jAI4Acv/jAI8Ac//jAJAAdP/jAJEAdP/jAJIAdf/iAJMAdv/iAJQAd//iAJUAeP/iAJYAeP/iAJcAef/hAJgAev/hAJkAe//hAJoAfP/hAJsAfP/hAJwAff/gAJ0Afv/gAJ4Af//gAJ8AgP/gAKAAgP/gAKEAgf/fAKIAgv/fAKMAg//fAKQAhP/fAKUAhP/fAKYAhf/eAKcAhv/eAKgAh//eAKkAiP/eAKoAiP/eAKsAif/dAKwAiv/dAK0Ai//d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ATkBOgE7ATwBPQE+AT8BQAFBAUIBQwFEAUUBRgFHAUgBSQFKAUsBTAFNAU4BTwFQAVEBUgFTAVQBVQFWAVcBWAFZAVoBWwFcAV0BXgFfAWABYQFiAWMBZAFlAWYAowCEAIUAlgCOAJ0A8gDzAI0A3gDxAJ4A9QD0APYAogCtAMkAxwCuAGIAYwCQAGQAywBlAMgAygDPAMwAzQDOAOkAZgDTANAA0QCvAGcA8ACRANYA1ADVAGgA6wDtAIkAagBpAGsAbQBsAG4AoABvAHEAcAByAHMAdQB0AHYAdwDqAHgAegB5AHsAfQB8ALgAoQB/AH4AgACBAOwA7gC6ALAAsQDkAOUAuwDmAOcApgDYANkABgAEAAUFLm51bGwJYWZpaTEwMDUxCWFmaWkxMDA1MglhZmlpMTAxMDAERXVybwlhZmlpMTAwNTgJYWZpaTEwMDU5CWFmaWkxMDA2MQlhZmlpMTAwNjAJYWZpaTEwMTQ1CWFmaWkxMDA5OQlhZmlpMTAxMDYJYWZpaTEwMTA3CWFmaWkxMDEwOQlhZmlpMTAxMDgJYWZpaTEwMTkzCWFmaWkxMDA2MglhZmlpMTAxMTAJYWZpaTEwMDU3CWFmaWkxMDA1MAlhZmlpMTAwMjMJYWZpaTEwMDUzB3VuaTAwQUQJYWZpaTEwMDU2CWFmaWkxMDA1NQlhZmlpMTAxMDMJYWZpaTEwMDk4DnBlcmlvZGNlbnRlcmVkCWFmaWkxMDA3MQlhZmlpNjEzNTIJYWZpaTEwMTAxCWFmaWkxMDEwNQlhZmlpMTAwNTQJYWZpaTEwMTAyCWFmaWkxMDEwNAlhZmlpMTAwMTcJYWZpaTEwMDE4CWFmaWkxMDAxOQlhZmlpMTAwMjAJYWZpaTEwMDIxCWFmaWkxMDAyMglhZmlpMTAwMjQJYWZpaTEwMDI1CWFmaWkxMDAyNglhZmlpMTAwMjcJYWZpaTEwMDI4CWFmaWkxMDAyOQlhZmlpMTAwMzAJYWZpaTEwMDMxCWFmaWkxMDAzMglhZmlpMTAwMzMJYWZpaTEwMDM0CWFmaWkxMDAzNQlhZmlpMTAwMzYJYWZpaTEwMDM3CWFmaWkxMDAzOAlhZmlpMTAwMzkJYWZpaTEwMDQwCWFmaWkxMDA0MQlhZmlpMTAwNDIJYWZpaTEwMDQzCWFmaWkxMDA0NAlhZmlpMTAwNDUJYWZpaTEwMDQ2CWFmaWkxMDA0NwlhZmlpMTAwNDgJYWZpaTEwMDQ5CWFmaWkxMDA2NQlhZmlpMTAwNjYJYWZpaTEwMDY3CWFmaWkxMDA2OAlhZmlpMTAwNjkJYWZpaTEwMDcwCWFmaWkxMDA3MglhZmlpMTAwNzMJYWZpaTEwMDc0CWFmaWkxMDA3NQlhZmlpMTAwNzYJYWZpaTEwMDc3CWFmaWkxMDA3OAlhZmlpMTAwNzkJYWZpaTEwMDgwCWFmaWkxMDA4MQlhZmlpMTAwODIJYWZpaTEwMDgzCWFmaWkxMDA4NAlhZmlpMTAwODUJYWZpaTEwMDg2CWFmaWkxMDA4NwlhZmlpMTAwODgJYWZpaTEwMDg5CWFmaWkxMDA5MAlhZmlpMTAwOTEJYWZpaTEwMDkyCWFmaWkxMDA5MwlhZmlpMTAwOTQJYWZpaTEwMDk1CWFmaWkxMDA5NglhZmlpMTAwOTcNYWZpaTEwMDQ1LjAwMQ1hZmlpMTAwNDcuMDAxAAAAAAAB//8AAA==";
      
	local SmallFont = RegisterFont(
		"SmallestPixel7", 
		400, 
		"normal", 
		{Id = "smallest-pixel7.ttf", Font = crypt.base64.decode(SmallFontBase64)}
	);

	local Minecraft = RegisterFont(
		"Minecraft", 
		400, 
		"normal", 
		{Id = "Minecraft.ttf", Font = crypt.base64.decode(MinecraftBase64)}
	);

      -- custom Video
      writefile(ImagesFolder .. '/DerekLippeVideo.mp4', crypt.base64.decode(CustomImageOverwrite.DerekLippeVideo));


	Fonts.SmallestPixel = SmallFont; 
	Fonts.Pixel = Minecraft;
	--

	--// Images
	local Images = {
		"Military PKM", "ArmorImage", "HotKeysImage", "ShadowImage", "OutlineShadowImage", "DropdownImage", "ColorwheelImage", "TransparencyImage", "LogoImage", "ModeratorImage",
		"Salvaged Skorpion", "Salvaged AK47", "Salvaged SMG", "Salvaged M14", "Salvaged Nailgun", "Salvaged AK74u", "Crossbow", "Wooden Bow", "Salvaged Python",
		"Salvaged Sniper", "Military M4A1", "Bruno's M4A1", "Military USP", "Salvaged Pump Action", "Military Barrett", "Salvaged Break Action",
		"Salvaged Pipe Rifle", "Salvaged Double Barrel", "Salvaged Shotgun", "Pumpkin Launcher", "Salvaged RPG", "Iron Shard Pickaxe", "Iron Shard Hatchet",
		"Stone Hatchet", "Stone Pickaxe", "Steel Axe", "Steel Pickaxe", "Wooden Spear", "Stone Spear", "Small Medkit", "Military Grenade",
		"Military Grenade Launcher", "PluginsImage", "SettingsImage", "MiscImage", "VisualsImage", "ESPImage", "CombatImage", "SkinsImage",
		"Mining Drill", "Chainsaw", "Salvaged P250", "HitmarkerImage"
	};

	for Index, Name in Images do
		if isfile(ImagesFolder.."/"..Name..".png") then 
			continue 
		end;

		RequestImage(Name)
		task.wait(0.1);
	end;
	--
end)()
--

Log("Loaded images and fonts")

local GetService = LPH_NO_VIRTUALIZE(function(Service)
	Service = game.GetService(game, Service)
	return cloneref(Service)
end);

local GetImage; do
	GetImage = LPH_NO_VIRTUALIZE(function(Name, Attempt)
		Attempt = Attempt or 1

		local FilePath = ImagesFolder.."/"..Name..".png"
		if isfile(FilePath) then 
			return getcustomasset(FilePath)
		elseif Attempt > 5 then
			return ""
		else
			RequestImage(Name)
			return GetImage(Name, Attempt + 1)
		end
	end);
end;

local HttpService       = GetService("HttpService")
local UserInputService  = GetService("UserInputService");
local Workspace         = GetService("Workspace");
local RunService        = GetService("RunService");
local TweenService      = GetService("TweenService");
local TextService       = GetService("TextService");
local Lighting          = GetService("Lighting");
local CoreGui           = GetService("CoreGui");
local ReplicatedStorage = GetService("ReplicatedStorage");
local Players           = GetService("Players");
local GuiService        = GetService("GuiService");
local TweenService      = GetService("TweenService");

local Camera = Workspace.CurrentCamera;
local Client = Players.LocalPlayer;
local MouseConstant = 30;
local Mouse = Client:GetMouse()

Log("Initializing tables")

local TrialModList = { 
	[4619800148] = "Trial Moderator", --//gobliniukss
	[113179883]  = "Trial Moderator", --// DopeIlI
	[1771300283] = "Trial Moderator"; --// severalracks
	[1077540175] = "Trial Moderator"; --// i3riefcase
	[3320377356] = "Trial Moderator"; --// Kriffith
	[3508020028] = "Trial Moderator"; ---.. SOLDIER
	[3122439095] = "Trial Moderator"; --// CHANCE LMFAO
	[3034556584] = "Trial Moderator"; -- Adam
	[886544546]  = "Trial Moderator";
	[1616925260] = "Trial Moderator";
	[165053216]  = "Trial Moderator";
	[1992294235] = "Trial Moderator";
	[971641336]  = "Trial Moderator";
};

Log("Initialized trial mod list")

local Library = {
	NotificationList = {},
	IsOpen = false;
	CategoryPause = 0.2,
	CategoryTransitionSpeed = 0.25,
	HighlightSpeed = 0.25,
	PageTransitionSpeed = 0.2,
	Windows = {},
	Flags = {},
	Font = Font.new("rbxasset://fonts/families/Roboto.json", Enum.FontWeight.Medium),
	BoldFont = Font.new("rbxasset://fonts/families/Roboto.json", Enum.FontWeight.Bold),
	ConfigPath = Name .. "/Config",
	CachePath = Name .. "/Cache",
	Connections = {},
	Keybinds = {
		MouseButton1 = "MB1",
		MouseButton2 = "MB2",
		MouseButton3 = "MB3",

		ButtonA = "A",
		ButtonB = "B",
		ButtonX = "X",
		ButtonY = "Y",
		ButtonStart = "STRT",
		ButtonSelect = "SELT",
		ButtonL1 = "L1",
		ButtonR1 = "R1",
		ButtonL2 = "L2",
		ButtonR2 = "R2",
		ButtonL3 = "L3",
		ButtonR3 = "R3",
		DPadUp = "DUP",
		DPadDown = "DDN",
		DPadLeft = "DLT",
		DPadRight = "DRT",

		W = "W",
		A = "A",
		S = "S",
		D = "D",
		Space = "SPC",
		LeftShift = "LSFT",
		RightShift = "RSFT",
		LeftControl = "LCTL",
		RightControl = "RCTL",
		LeftAlt = "LALT",
		RightAlt = "RALT",
		Enter = "ENT",
		Escape = "ESC",
		Backspace = "BS",
		Tab = "TAB",
		CapsLock = "CAPS",
		Insert = "INS",
		Delete = "DEL",
		Home = "HOME",
		EndKey = "END",
		PageUp = "PGUP",
		PageDown = "PGDN",
		Up = "UP",
		Down = "DN",
		Left = "LT",
		Right = "RT",

		Zero = "0",
		One = "1",
		Two = "2",
		Three = "3",
		Four = "4",
		Five = "5",
		Six = "6",
		Seven = "7",
		Eight = "8",
		Nine = "9",

		F1 = "F1",
		F2 = "F2",
		F3 = "F3",
		F4 = "F4",
		F5 = "F5",
		F6 = "F6",
		F7 = "F7",
		F8 = "F8",
		F9 = "F9",
		F10 = "F10",
		F11 = "F11",
		F12 = "F12",

		Minus = "-",
		Equals = "=",
		LeftBracket = "[",
		RightBracket = "]",
		Semicolon = ";",
		Quote = "'",
		Comma = ",",
		Period = ".",
		Slash = "/",
		Backslash = "\\",
		Grave = "`",
	},
	HotKeysImage = GetImage("HotkeysImage"),
	ShadowImage = GetImage("ShadowImage"), --"rbxassetid://6014261993",
	OutlineShadowImage = GetImage("OutlineShadowImage"), --"rbxassetid://93984335181980",
	DropdownImage = GetImage("DropdownImage"), --"rbxassetid://106970154099045",
	ColorwheelImage = GetImage("ColorwheelImage"),--"rbxassetid://6042338876",
	TransparencyImage = GetImage("TransparencyImage"),--"rbxassetid://96978989117558",
	LogoImage = GetImage("LogoImage"), --"http://www.roblox.com/asset/?id=71404918936585";
	ModeratorImage = GetImage("ModeratorImage"),
	ArmorImage = GetImage("ArmorImage"),
};

Log("Initialized Library tables")

local Theme = {
	Accent = Color3.fromRGB(63, 201, 176), -- 0, 189, 255
	DarkAccent = Color3.fromRGB(63, 201, 176), -- 0, 157, 209
	AccentedHighlight = Color3.fromRGB(63, 201, 176), -- 0, 89, 118
};

Log("Initialized theme")

local Threads = {
	Render = {},
	Entities = {},
	Character = {},
	Input = {},
};

Log("Initialized thread table")

local EntityClass = {
	Main = {
		Cache = {},
		Functions = {},
	},

	Misc = {
		Cache = {},
		Functions = {},
	},

	Global = {},
	Flags = {},

	AnimationSpeed = 0.15,
	WeaponImages = {
		["Salvaged Skorpion"] = GetImage("Salvaged Skorpion");
		["Salvaged P250"]     = GetImage("Salvaged P250");
		["Salvaged Python"]   = GetImage("Salvaged Python");
		["Salvaged AK47"]     = GetImage("Salvaged AK47");
		["Salvaged AK74u"]    = GetImage("Salvaged AK74u");
		["Wooden Bow"]        = GetImage("Wooden Bow");
		["Nail Gun"]  = GetImage("Salvaged Nailgun");
		["Salvaged SMG"]      = GetImage("Salvaged SMG");
		["Crossbow"]          = GetImage("Crossbow");
		["Salvaged M14"]      = GetImage("Salvaged M14");

		["Salvaged Sniper"]   = GetImage("Salvaged Sniper");
		["Military M4A1"]     = GetImage("Military M4A1");
		["Bruno's M4A1"]      = GetImage("Bruno's M4A1");
		["Military USP"]      = GetImage("Military USP");
		["Salvaged Pump Action"]    = GetImage("Salvaged Pump Action");
		["Military Barrett"]        = GetImage("Military Barrett");
		["Military PKM"]        = GetImage("Military PKM");
		["Salvaged Break Action"]   = GetImage("Salvaged Break Action");
		["Salvaged Pipe Rifle"]     = GetImage("Salvaged Pipe Rifle");
		["Salvaged Double Barrel"]  = GetImage("Salvaged Double Barrel");
		["Salvaged Shotgun"]        = GetImage("Salvaged Shotgun");
		["Pumpkin Launcher"]        = GetImage("Pumpkin Launcher");
		["Salvaged RPG"]            = GetImage("Salvaged RPG");

		["Steel Axe"]           = GetImage("Steel Axe");
		["Steel Pickaxe"]           = GetImage("Steel Pickaxe");
		["Wooden Spear"]            = GetImage("Wooden Spear");
		["Stone Spear"]             = GetImage("Stone Spear");
		["Small Medkit"]                  = GetImage("Small Medkit");
		["Military Grenade"]        = GetImage("Military Grenade");
		["Military Grenade Launcher"]        = GetImage("Military Grenade Launcher");

		["Chainsaw"] = GetImage("Chainsaw"),
		["Mining Drill"] = GetImage("Mining Drill")
	};

	ItemList = { 
		"Bandage",
		"Blueprint",
		"Wooden External Wall",
		"Stone External Wall",
		"Barricade",
		"Care Package Signal",
		"Salvaged Skorpion",
		"Salvaged P250",
		"Salvaged AK47",
		"Salvaged Python",
		"Salvaged AK74u",
		"Wooden Bow",
		"Nail Gun",
		"Salvaged SMG",
		"Crossbow",
		"Salvaged M14",
		"Salvaged Sniper",
		"Military M4A1",
		"Bruno's M4A1",
		"Military USP",
		"Salvaged Pump Action",
		"Military Barrett",
		"Military PKM",
		"Salvaged Break Action",
		"Salvaged Pipe Rifle",
		"Salvaged Double Barrel",
		"Salvaged Shotgun",
		"Pumpkin Launcher",
		"Salvaged RPG",

		"Iron Shard Pickaxe",
		"Iron Shard Hatchet",
		"Stone Hatchet",
		"Stone Pickaxe",
		"Steel Axe",
		"Steel Pickaxe",
		"Wooden Spear",
		"Stone Spear",
		"Small Medkit",
		"Military Grenade",
		"Military Grenade Launcher",

		"Chainsaw",
		"Mining Drill"
	};

	OffscreenImages = { 
		["GlowingArrow"] = "";
		["GlowingArc"] = "";
		["Arc"] = "";
		["Arrow"] = "";
		["OpaqueArrow"] = "";
	};

	IgnoreNames = {
		["HumanoidRootPart"] = true
	},
	Font = Fonts.Pixel,--Font.new("rbxasset://fonts/families/GothamSSm.json", Enum.FontWeight.Bold);
	FontSize = 10.00;
};

Log("Initialized EntityClass object")

local Math = {};
local Visuals = {};
local Globals = {};


Log("Initialized tables")

--#region Globals
Globals.LastArmorCheck = tick()
Globals.ArmorIds = {};
Globals.ArmorNames = {};
Globals.FlaggedStaff = {};
Globals.QuickStackFunctions = {};

Globals.ApplyTextStroke = LPH_NO_VIRTUALIZE(function(Object)
      local NewStroke = Globals:Instance("UIStroke", {
            Parent = Object,
            Thickness = 1,
            Color = Color3.fromRGB(),
      })
      return NewStroke
end);

Globals.DeepCopy = LPH_NO_VIRTUALIZE(function(Table) 
      local Copy = {}
      for k, v in pairs(Table) do
            if type(v) == 'table' then
                  Copy[k] = Globals.DeepCopy(v)
            else
                  Copy[k] = v
            end
      end
      return Copy
end);

function Globals:TweenTransparencyIns(container, targetTransparency, duration)
      duration = duration or 0.2
      for _, obj in ipairs(container:GetDescendants()) do
            if obj:IsA("GuiObject") then
                  local props = {}

                  if obj:IsA("TextLabel") or obj:IsA("TextButton") then
                        props.TextTransparency = targetTransparency
                  end

                  if obj:IsA("ImageLabel") or obj:IsA("ImageButton") then
                        props.ImageTransparency = targetTransparency
                  end

                  if obj.BackgroundTransparency ~= nil then
                        props.BackgroundTransparency = targetTransparency
                  end

                  Globals:Tween(obj, TweenInfo.new(duration, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), props)
            end

            if obj:IsA("UIStroke") then
                  Globals:Tween(obj, TweenInfo.new(duration, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {
                        Transparency = targetTransparency,
                  })
            end
      end

      if container:IsA("GuiObject") then
            Globals:Tween(container, TweenInfo.new(duration, Enum.EasingStyle.Quad), {
                  BackgroundTransparency = targetTransparency,
            })
      end
end

function Globals:Tween(...)
      local NewTween = TweenService:Create(...)
      NewTween:Play()
      return NewTween
end

function Globals:Instance(Class, Properties)
      local Element = Instance.new(Class)

      for Key, Value in Properties do 
            Element[Key] = Value
      end

      return Element
end

function Globals:Tween(...)
      local Tween = TweenService:Create(...)
      Tween:Play()
      return Tween
end;

if ReplicatedStorage:FindFirstChild("Modules") and ReplicatedStorage.Modules:FindFirstChild("Items") then 
      local Items = Globals.DeepCopy(require(ReplicatedStorage.Modules.Items));
      for Index, ItemData in Items do 
            if ItemData.Type == "Armor" then 
                  Globals.ArmorIds[Index] = {
                        Name = ItemData.Name,
                  };
            end;
      end;
      Globals.ItemInfoTable = Items
end;


Log("Loaded globals library")
--#endregion Globals

--#region Library
Library.Theme = Theme
Library.__index = Library

Library.Notifications = Globals:Instance("ScreenGui", { 
      Parent = CoreGui, 
      DisplayOrder = 1,
      IgnoreGuiInset = true,
})

Library.HeadsUp = Globals:Instance("ScreenGui", { 
      Parent = CoreGui, 
      DisplayOrder = 1,
      IgnoreGuiInset = true,
      Enabled = true
})

LPH_NO_VIRTUALIZE(function() --// Functions that arent needing to be protected
      function Library:Connection(Name, Signal, Function)
            local Connection = Signal:Connect(Function)

            self.Connections[Name] = {
                  Signal = Signal,
                  Function = Function,
                  Connection = Connection,
            }

            return self.Connections[Name]
      end

      function Library:Disconnect(Name)
            local Conn = self.Connections[Name]
            if Conn then
                  Conn.Connection:Disconnect()
                  self.Connections[Name] = nil
            end
      end

      function Library:DisconnectAll()
            for Name, Conn in pairs(self.Connections) do
                  Conn.Connection:Disconnect()
            end
            table.clear(self.Connections)
      end

      function Library:DoCallback(Callback, Data)

            local Success, Error = pcall(Callback, Data)
            if not Success and Error then
                  return "Failed", Error
            end
            return Success
      end

      function Library:FormatValue(incr, val)
            if incr < 1 then
                  return string.format("%.2f", val)
            else
                  return tostring(math.floor(val + 0.5))
            end
      end

      function Library:GetInputName(input)
            if input and input.UserInputType then
                  if input.UserInputType == Enum.UserInputType.Keyboard then
                        return input.KeyCode.Name
                  elseif input.UserInputType.Name:match("Mouse") then
                        return input.UserInputType.Name
                  else
                        return "Unknown"
                  end
            end
      end

      function Library:FormatKeyName(name)
            if Library.Keybinds[name] then
                  return Library.Keybinds[name]
            elseif #name > 4 then
                  return name:sub(1, 4)
            end
            return name
      end

      function Library:GetConfig() 
            local Flags = self.Flags

            local Save = {}
            for Flag, Data in Flags do
                  local Class = Data.Class
                  local Value = Data.Value

                  if Class == 'Toggle' then
                        Save[Flag] = Value
                  end

                  if Class == 'Colorpicker' then
                        Save[Flag] = {
                              [1] = { Value[1].R, Value[1].G, Value[1].B },
                              [2] = Value[2],
                        }
                  end

                  if Class == 'Slider' then
                        Save[Flag] = Value
                  end

                  if Class == 'TextBox' then
                        Save[Flag] = Value
                  end

                  if Class == 'Dropdown' then
                        Save[Flag] = Value
                  end

                  if Class == 'Keybind' then
                        if Data.Key then 
                              local Key = {
                                    Type = Data.Key.Type,
                                    Value = Data.Key.Value.Name,
                              };

                              Save[Flag] = Key
                        end;
                  end;
            end;

            return HttpService:JSONEncode(Save);
      end;

      function Library:SaveConfig(Name) 
            local CurrentConfig = Library:GetConfig();

            writefile(ConfigsFolder.."/"..Name..".json", CurrentConfig)
      end

      function Library:LoadConfig(Name) 
            local FilePath = ConfigsFolder.."/"..Name..".json";

            if not isfile(FilePath) then 
                  Library:Notify("Configuration failed to load\nFile, "..FilePath.. " does not exist!", 4, Color3.fromRGB(255, 0, 0));
                  return
            end;

            local Config = readfile(FilePath); 
            local DecodedConfig = HttpService:JSONDecode(Config); 

            for Flag, FlagData in DecodedConfig do 
                  local RealFlag = Library.Flags[Flag];

                  if not RealFlag then
                        continue
                  end; 

                  if RealFlag.Class == "Colorpicker" then 
                        local Color = Color3.new(FlagData[1][1], FlagData[1][2], FlagData[1][3])
                        task.spawn(function()  
                              RealFlag:Set({
                                    Color,
                                    FlagData[2];
                              })
                        end);

                        continue;
                  end;

                  if RealFlag.Class == "Keybind" then 
                        task.spawn(function()
                              local KeyData = FlagData

                              local input = {}

                              if KeyData.Type == "MouseButton" then
                                    input.UserInputType = Enum.UserInputType[KeyData.Value]
                              elseif KeyData.Type == "KeyCode" then
                                    input.UserInputType = Enum.UserInputType.Keyboard
                                    input.KeyCode = Enum.KeyCode[KeyData.Value]
                              else
                                    input.UserInputType = Enum.UserInputType[KeyData.Value]
                              end

                              RealFlag:SetKey(input)
                        end)
                        continue
                  end


                  task.spawn(function() 
                        RealFlag:Set(FlagData);
                  end);
            end;
      end;
end)()

LPH_NO_VIRTUALIZE(function() --// Not that important 
      function Library:CreateHotkeysPanel()
            local Hotkeys = {
                  Keys = 0,
            }

            local Components = {}

            Hotkeys.__index = Hotkeys

            Components["Hotkeys"] = Globals:Instance("Frame", {
                  BackgroundColor3 = Color3.fromRGB(11, 11, 11),
                  BorderColor3 = Color3.fromRGB(0, 0, 0),
                  BorderSizePixel = 0,
                  Position = UDim2.new(0, 20, 0.5, 0),
                  Size = UDim2.new(0, 215, 0, 30),
                  Name = "Hotkeys",
                  Parent = Library.HeadsUp,
                  Visible = false,
            })

            Components["HotkeysCorner"] = Globals:Instance("UICorner", {
                  CornerRadius = UDim.new(0, 4),
                  Name = "HotkeysCorner",
                  Parent = Components["Hotkeys"],
            })

            Components["HotkeysStroke"] = Globals:Instance("UIStroke", {
                  Color = Color3.fromRGB(24, 24, 24),
                  Name = "HotkeysStroke",
                  Parent = Components["Hotkeys"],
            })

            Components["HotkeysTitleArea"] = Globals:Instance("Frame", {
                  BackgroundColor3 = Color3.fromRGB(14, 14, 14),
                  BorderColor3 = Color3.fromRGB(0, 0, 0),
                  BorderSizePixel = 0,
                  Size = UDim2.new(1, 0, 0, 25),
                  Name = "HotkeysTitleArea",
                  Parent = Components["Hotkeys"],
            })

            Components["HotkeysTitleCorner"] = Globals:Instance("UICorner", {
                  CornerRadius = UDim.new(0, 4),
                  Name = "HotkeysTitleCorner",
                  Parent = Components["HotkeysTitleArea"],
            })

            Components["HotkeysTitlestroke"] = Globals:Instance("UIStroke", {
                  Color = Color3.fromRGB(24, 24, 24),
                  Name = "HotkeysTitlestroke",
                  Parent = Components["HotkeysTitleArea"],
            })

            Components["HotkeysTitle"] = Globals:Instance("TextLabel", {
                  Font = Enum.Font.SourceSansSemibold,
                  Text = "Hotkeys",
                  TextColor3 = Color3.fromRGB(255, 255, 255),
                  TextSize = 14,
                  TextXAlignment = Enum.TextXAlignment.Left,
                  BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                  BackgroundTransparency = 1,
                  BorderColor3 = Color3.fromRGB(0, 0, 0),
                  BorderSizePixel = 0,
                  Position = UDim2.new(0, 35, 0, 0),
                  Size = UDim2.new(1, -35, 1, 0),
                  Name = "HotkeysTitle",
                  Parent = Components["HotkeysTitleArea"],
            })

            Components["HotkeysImage"] = Globals:Instance("ImageLabel", {
                  Image = Library.HotKeysImage,
                  AnchorPoint = Vector2.new(0, 0.5),
                  BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                  BackgroundTransparency = 1,
                  BorderColor3 = Color3.fromRGB(0, 0, 0),
                  BorderSizePixel = 0,
                  Position = UDim2.new(0, 5, 0.5, 0),
                  Size = UDim2.new(0.0116279069, 20, 1, -5),
                  Name = "HotkeysImage",
                  Parent = Components["HotkeysTitleArea"],
            })

            Components["HotkeysActive"] = Globals:Instance("Frame", {
                  BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                  BackgroundTransparency = 1,
                  BorderColor3 = Color3.fromRGB(0, 0, 0),
                  BorderSizePixel = 0,
                  Position = UDim2.new(0, 10, 0, 30),
                  Size = UDim2.new(1, -10, 0, 33),
                  Name = "HotkeysActive",
                  Parent = Components["Hotkeys"],
            })

            Components["UIListLayout"] = Globals:Instance("UIListLayout", {
                  Padding = UDim.new(0, 5),
                  SortOrder = Enum.SortOrder.LayoutOrder,
                  Parent = Components["HotkeysActive"],
            })

            Components["HotkeysShadowHolder"] = Globals:Instance("Frame", {
                  BackgroundTransparency = 1,
                  BorderSizePixel = 0,
                  Size = UDim2.new(1, 0, 1, 0),
                  ZIndex = 0,
                  Name = "HotkeysShadowHolder",
                  Parent = Components["Hotkeys"],
            })

            Components["HotkeysShadow"] = Globals:Instance("ImageLabel", {
                  Image = Library.ShadowImage,
                  ImageColor3 = Color3.fromRGB(0, 0, 0),
                  ScaleType = Enum.ScaleType.Slice,
                  SliceCenter = Rect.new(49, 49, 450, 450),
                  AnchorPoint = Vector2.new(0.5, 0.5),
                  BackgroundTransparency = 1,
                  ImageTransparency = 0.8,
                  BorderSizePixel = 0,
                  Position = UDim2.new(0.5, 0, 0.5, 0),
                  Size = UDim2.new(1, 47, 1, 47),
                  ZIndex = 0,
                  Name = "HotkeysShadow",
                  Parent = Components["HotkeysShadowHolder"],
            })

            Hotkeys.Components = Components

            function Hotkeys:Add(Name, Key)
                  self.Keys += 1
                  Globals:Tween(self.Components.HotkeysShadow, TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad), {
                        ImageTransparency = self.Keys > 0 and 0 or 0.8,
                  })

                  local Hotkey = {}

                  Hotkey["Container"] = Globals:Instance("Frame", {
                        BackgroundTransparency = 1,
                        Size = UDim2.new(1, 0, 0, 14),
                        Name = Name,
                        Parent = Components["HotkeysActive"],
                  })

                  Hotkey["NameLabel"] = Globals:Instance("TextLabel", {
                        Font = Enum.Font.SourceSansSemibold,
                        Text = Name,
                        TextColor3 = Color3.fromRGB(150, 150, 150),
                        TextSize = 14,
                        TextXAlignment = Enum.TextXAlignment.Left,
                        BackgroundTransparency = 1,
                        Size = UDim2.new(0.5, 0, 1, 0),
                        Position = UDim2.new(0, 0, 0, 0),
                        Name = "NameLabel",
                        Parent = Hotkey.Container,
                  })

                  Hotkey["KeyLabel"] = Globals:Instance("TextLabel", {
                        Font = Enum.Font.SourceSansSemibold,
                        Text = "["..tostring(Key).."]",
                        TextColor3 = Color3.fromRGB(150, 150, 150),
                        TextSize = 14,
                        TextXAlignment = Enum.TextXAlignment.Right,
                        BackgroundTransparency = 1,
                        Size = UDim2.new(0.5, -5, 1, 0),
                        Position = UDim2.new(0.5, -3, 0, 0),
                        Name = "KeyLabel",
                        Parent = Hotkey.Container,
                  })

                  Globals:Tween(self.Components.Hotkeys, TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad), {
                        Size = UDim2.new(0, 215, 0, 45) + UDim2.new(0, 0, 0, self.Keys * 17),
                  })
                  --Size = UDim2.new(0, 215, 0, 45) + UDim2.new(0, 0, 0, self.Keys * 17),
            end

            function Hotkeys:UpdateStatus(Name, On, Key, Destroy)
                  local Container = self.Components["HotkeysActive"]:FindFirstChild(Name)
                  if Container then
                        if Key and Key ~= "" then
                              Container.KeyLabel.Text = "["..tostring(Key).."]"
                        end

                        local targetColor = On and Color3.fromRGB(255, 255, 255) or Color3.fromRGB(150, 150, 150)
                        Globals:Tween(Container.NameLabel, TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad), {
                              TextColor3 = targetColor,
                        })
                        Globals:Tween(Container.KeyLabel, TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad), {
                              TextColor3 = targetColor,
                        })

                        if Destroy then
                              self.Keys -= 1
                              Container:Destroy()

                              Globals:Tween(
                                    self.Components.Hotkeys,
                                    TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                    {
                                          Size = UDim2.new(0, 215, 0, 45) + UDim2.new(0, 0, 0, self.Keys * 17),
                                    }
                              )
                        end
                  else
                        if Key ~= "" then
                              self:Add(Name, Key)
                        end
                  end

                  Globals:Tween(self.Components.HotkeysShadow, TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad), {
                        ImageTransparency = self.Keys > 0 and 0 or 0.8,
                  })
            end

            return Hotkeys
      end;

      function Library:CreateModeratorsPanel()
            local Moderators = {
                  Count = 0,
            }

            local Components = {}

            Moderators.__index = Moderators

            Components["Moderators"] = Globals:Instance("Frame", {
                  BackgroundColor3 = Color3.fromRGB(11, 11, 11),
                  BorderColor3 = Color3.fromRGB(0, 0, 0),
                  BorderSizePixel = 0,
                  Position = UDim2.new(0, 20, 0.5, 200),
                  Size = UDim2.new(0, 215, 0, 30),
                  Name = "Moderators",
                  Parent = Library.HeadsUp,
                  Visible = true,
            })

            Components["ModeratorsCorner"] = Globals:Instance("UICorner", {
                  CornerRadius = UDim.new(0, 4),
                  Name = "ModeratorsCorner",
                  Parent = Components["Moderators"],
            })

            Components["ModeratorsStroke"] = Globals:Instance("UIStroke", {
                  Color = Color3.fromRGB(24, 24, 24),
                  Name = "ModeratorsStroke",
                  Parent = Components["Moderators"],
            })

            Components["ModeratorsTitleArea"] = Globals:Instance("Frame", {
                  BackgroundColor3 = Color3.fromRGB(14, 14, 14),
                  BorderColor3 = Color3.fromRGB(0, 0, 0),
                  BorderSizePixel = 0,
                  Size = UDim2.new(1, 0, 0, 25),
                  Name = "ModeratorsTitleArea",
                  Parent = Components["Moderators"],
            })

            Components["ModeratorsTitleCorner"] = Globals:Instance("UICorner", {
                  CornerRadius = UDim.new(0, 4),
                  Name = "ModeratorsTitleCorner",
                  Parent = Components["ModeratorsTitleArea"],
            })

            Components["ModeratorsTitlestroke"] = Globals:Instance("UIStroke", {
                  Color = Color3.fromRGB(24, 24, 24),
                  Name = "ModeratorsTitlestroke",
                  Parent = Components["ModeratorsTitleArea"],
            })

            Components["ModeratorsTitle"] = Globals:Instance("TextLabel", {
                  Font = Enum.Font.SourceSansSemibold,
                  Text = "Moderators",
                  TextColor3 = Color3.fromRGB(255, 255, 255),
                  TextSize = 14,
                  TextXAlignment = Enum.TextXAlignment.Left,
                  BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                  BackgroundTransparency = 1,
                  BorderColor3 = Color3.fromRGB(0, 0, 0),
                  BorderSizePixel = 0,
                  Position = UDim2.new(0, 25, 0, 0),
                  Size = UDim2.new(1, -35, 1, 0),
                  Name = "ModeratorsTitle",
                  Parent = Components["ModeratorsTitleArea"],
            })

            Components["ModeratorsImage"] = Globals:Instance("ImageLabel", {
                  Image = Library.ModeratorImage,
                  AnchorPoint = Vector2.new(0, 0.5),
                  BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                  BackgroundTransparency = 1,
                  BorderColor3 = Color3.fromRGB(0, 0, 0),
                  BorderSizePixel = 0,
                  Position = UDim2.new(0, 5, 0.5, 0),
                  Size = UDim2.new(0, 15, 1, -10),
                  Name = "ModeratorsImage",
                  Parent = Components["ModeratorsTitleArea"],
            })

            Components["ModeratorsList"] = Globals:Instance("Frame", {
                  BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                  BackgroundTransparency = 1,
                  BorderColor3 = Color3.fromRGB(0, 0, 0),
                  BorderSizePixel = 0,
                  Position = UDim2.new(0, 10, 0, 30),
                  Size = UDim2.new(1, -10, 0, 33),
                  Name = "ModeratorsList",
                  Parent = Components["Moderators"],
            })

            Components["UIListLayout"] = Globals:Instance("UIListLayout", {
                  Padding = UDim.new(0, 5),
                  SortOrder = Enum.SortOrder.LayoutOrder,
                  Parent = Components["ModeratorsList"],
            })

            Components["ModeratorsShadowHolder"] = Globals:Instance("Frame", {
                  BackgroundTransparency = 1,
                  BorderSizePixel = 0,
                  Size = UDim2.new(1, 0, 1, 0),
                  ZIndex = 0,
                  Name = "ModeratorsShadowHolder",
                  Parent = Components["Moderators"],
            })

            Components["ModeratorsShadow"] = Globals:Instance("ImageLabel", {
                  Image = Library.ShadowImage,
                  ImageColor3 = Color3.fromRGB(0, 0, 0),
                  ScaleType = Enum.ScaleType.Slice,
                  SliceCenter = Rect.new(49, 49, 450, 450),
                  AnchorPoint = Vector2.new(0.5, 0.5),
                  BackgroundTransparency = 1,
                  ImageTransparency = 0.8,
                  BorderSizePixel = 0,
                  Position = UDim2.new(0.5, 0, 0.5, 0),
                  Size = UDim2.new(1, 47, 1, 47),
                  ZIndex = 0,
                  Name = "ModeratorsShadow",
                  Parent = Components["ModeratorsShadowHolder"],
            })

            Moderators.Components = Components

            function Moderators:Add(Name, Role)
                  self.Count += 1

                  Globals:Tween(self.Components.ModeratorsShadow, TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad), {
                        ImageTransparency = self.Count > 0 and 0 or 0.8,
                  })

                  local Moderator = {}

                  Moderator["Container"] = Globals:Instance("Frame", {
                        BackgroundTransparency = 1,
                        Size = UDim2.new(1, 0, 0, 14),
                        Name = Name,
                        Parent = Components["ModeratorsList"],
                  })

                  Moderator["NameLabel"] = Globals:Instance("TextLabel", {
                        Font = Enum.Font.SourceSansSemibold,
                        Text = Name,
                        TextColor3 = Color3.fromRGB(255, 255, 255),
                        TextSize = 14,
                        TextXAlignment = Enum.TextXAlignment.Left,
                        BackgroundTransparency = 1,
                        Size = UDim2.new(0.5, 0, 1, 0),
                        Position = UDim2.new(0, 0, 0, 0),
                        Name = "NameLabel",
                        Parent = Moderator.Container,
                  })

                  Moderator["RoleLabel"] = Globals:Instance("TextLabel", {
                        Font = Enum.Font.SourceSansSemibold,
                        Text = Role,
                        TextColor3 = Color3.fromRGB(255, 255, 255),
                        TextSize = 14,
                        TextXAlignment = Enum.TextXAlignment.Right,
                        BackgroundTransparency = 1,
                        Size = UDim2.new(0.5, -5, 1, 0),
                        Position = UDim2.new(0.5, -3, 0, 0),
                        Name = "RoleLabel",
                        Parent = Moderator.Container,
                  })

                  Globals:Tween(self.Components.Moderators, TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad), {
                        Size = UDim2.new(0, 215, 0, 30) + UDim2.new(0, 0, 0, self.Count * 19),
                  })
            end

            function Moderators:UpdateModerator(Name, Role, Remove)
                  local Container = self.Components["ModeratorsList"]:FindFirstChild(Name)

                  if Container then
                        if Role then
                              Container.RoleLabel.Text = Role
                        end

                        if Remove then
                              self.Count -= 1
                              Container:Destroy()

                              Globals:Tween(
                                    self.Components.Moderators,
                                    TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                    {
                                          Size = UDim2.new(0, 215, 0, 30) + UDim2.new(0, 0, 0, self.Count * 19),
                                    }
                              )
                        end
                  else
                        if Name and Role then
                              self:Add(Name, Role)
                        end
                  end

                  Globals:Tween(self.Components.ModeratorsShadow, TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad), {
                        ImageTransparency = self.Count > 0 and 0 or 0.8,
                  })
            end

            function Moderators:ClearAll()
                  for _, child in ipairs(self.Components["ModeratorsList"]:GetChildren()) do
                        if child:IsA("TextLabel") then
                              child:Destroy()
                        end
                  end
                  self.Count = 0

                  Globals:Tween(self.Components.Moderators, TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad), {
                        Size = UDim2.new(0, 215, 0, 45),
                  })

                  Globals:Tween(self.Components.ModeratorsShadow, TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad), {
                        ImageTransparency = 0.8,
                  })
            end

            return Moderators
      end;

      function Library:CreateArmorPanel()
            local Armor = {
                  Count = 0,
            }

            local Components = {}

            Armor.__index = Armor

            Components["Armor"] = Globals:Instance("Frame", {
                  BackgroundColor3 = Color3.fromRGB(11, 11, 11),
                  BorderColor3 = Color3.fromRGB(0, 0, 0),
                  BorderSizePixel = 0,
                  Position = UDim2.new(1, -245, 0.5, 0),
                  Size = UDim2.new(0, 215, 0, 30),
                  Name = "Armor",
                  Parent = Library.HeadsUp,
                  Visible = true,
                  ClipsDescendants = true,
            })

            Components["ArmorCorner"] = Globals:Instance("UICorner", {
                  CornerRadius = UDim.new(0, 4),
                  Name = "ArmorCorner",
                  Parent = Components["Armor"],
            })

            Components["ArmorStroke"] = Globals:Instance("UIStroke", {
                  Color = Color3.fromRGB(24, 24, 24),
                  Name = "ArmorStroke",
                  Parent = Components["Armor"],
            })

            Components["ArmorTitleArea"] = Globals:Instance("Frame", {
                  BackgroundColor3 = Color3.fromRGB(14, 14, 14),
                  BorderColor3 = Color3.fromRGB(0, 0, 0),
                  BorderSizePixel = 0,
                  Size = UDim2.new(1, 0, 0, 25),
                  Name = "ArmorTitleArea",
                  Parent = Components["Armor"],
            })

            Components["ArmorTitleCorner"] = Globals:Instance("UICorner", {
                  CornerRadius = UDim.new(0, 4),
                  Name = "ArmorTitleCorner",
                  Parent = Components["ArmorTitleArea"],
            })

            Components["ArmorTitlestroke"] = Globals:Instance("UIStroke", {
                  Color = Color3.fromRGB(24, 24, 24),
                  Name = "ArmorTitlestroke",
                  Parent = Components["ArmorTitleArea"],
            })

            Components["ArmorTitle"] = Globals:Instance("TextLabel", {
                  Font = Enum.Font.SourceSansSemibold,
                  Text = "Armor Viewer",
                  TextColor3 = Color3.fromRGB(255, 255, 255),
                  TextSize = 14,
                  TextXAlignment = Enum.TextXAlignment.Left,
                  BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                  BackgroundTransparency = 1,
                  BorderColor3 = Color3.fromRGB(0, 0, 0),
                  BorderSizePixel = 0,
                  Position = UDim2.new(0, 25, 0, 0),
                  Size = UDim2.new(1, -35, 1, 0),
                  Name = "ArmorTitle",
                  Parent = Components["ArmorTitleArea"],
            })

            Components["ArmorImage"] = Globals:Instance("ImageLabel", {
                  Image = Library.ArmorImage,
                  AnchorPoint = Vector2.new(0, 0.5),
                  BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                  BackgroundTransparency = 1,
                  BorderColor3 = Color3.fromRGB(0, 0, 0),
                  BorderSizePixel = 0,
                  Position = UDim2.new(0, 5, 0.5, 0),
                  Size = UDim2.new(0, 15, 1, -10),
                  Name = "ArmorImage",
                  Parent = Components["ArmorTitleArea"],
            })

            Components["ArmorList"] = Globals:Instance("Frame", {
                  BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                  BackgroundTransparency = 1,
                  BorderColor3 = Color3.fromRGB(0, 0, 0),
                  BorderSizePixel = 0,
                  Position = UDim2.new(0, 10, 0, 30),
                  Size = UDim2.new(1, -10, 0, 33),
                  Name = "ArmorList",
                  Parent = Components["Armor"],
                  AutomaticSize = Enum.AutomaticSize.Y,
                  -- ClipsDescendants = true,
            })

            Components["UIListLayout"] = Globals:Instance("UIListLayout", {
                  Padding = UDim.new(0, 5),
                  SortOrder = Enum.SortOrder.LayoutOrder,
                  Parent = Components["ArmorList"],
            })

            Components["ArmorShadowHolder"] = Globals:Instance("Frame", {
                  BackgroundTransparency = 1,
                  BorderSizePixel = 0,
                  Size = UDim2.new(1, 0, 1, 0),
                  ZIndex = 0,
                  Name = "ArmorShadowHolder",
                  Parent = Components["Armor"],
            })

            Components["ArmorShadow"] = Globals:Instance("ImageLabel", {
                  Image = Library.ShadowImage,
                  ImageColor3 = Color3.fromRGB(0, 0, 0),
                  ScaleType = Enum.ScaleType.Slice,
                  SliceCenter = Rect.new(49, 49, 450, 450),
                  AnchorPoint = Vector2.new(0.5, 0.5),
                  BackgroundTransparency = 1,
                  ImageTransparency = 0.8,
                  BorderSizePixel = 0,
                  Position = UDim2.new(0.5, 0, 0.5, 0),
                  Size = UDim2.new(1, 47, 1, 47),
                  ZIndex = 0,
                  Name = "ArmorShadow",
                  Parent = Components["ArmorShadowHolder"],
            })

            Armor.Components = Components

            function Armor:Add(ArmorName, ArmorSkin)
                  if not self.Components.ArmorList:FindFirstChild(ArmorName.."_"..ArmorSkin) then 
                        self.Count += 1

                        Globals:Tween(self.Components.ArmorShadow, TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad), {
                              ImageTransparency = self.Count > 0 and 0 or 0.8,
                        })

                        local ArmorEntry = {}

                        ArmorEntry["Container"] = Globals:Instance("Frame", {
                              BackgroundTransparency = 1,
                              Size = UDim2.new(1, 0, 0, 14),
                              Name = ArmorName.."_"..ArmorSkin,
                              Parent = Components["ArmorList"],
                        })

                        ArmorEntry.Container:SetAttribute("IsContainer", true)

                        ArmorEntry["PlayerLabel"] = Globals:Instance("TextLabel", {
                              Font = Enum.Font.SourceSansSemibold,
                              Text = ArmorName,
                              TextColor3 = Color3.fromRGB(255, 255, 255),
                              TextSize = 14,
                              TextXAlignment = Enum.TextXAlignment.Left,
                              BackgroundTransparency = 1,
                              Size = UDim2.new(0.5, 0, 1, 0),
                              Position = UDim2.new(0, 0, 0, 0),
                              Name = "PlayerLabel",
                              Parent = ArmorEntry.Container,
                        })

                        ArmorEntry["SkinLabel"] = Globals:Instance("TextLabel", {
                              Font = Enum.Font.SourceSansSemibold,
                              Text = ArmorSkin,
                              TextColor3 = Color3.fromRGB(255, 255, 255),
                              TextSize = 14,
                              TextXAlignment = Enum.TextXAlignment.Right,
                              BackgroundTransparency = 1,
                              Size = UDim2.new(0.5, -5, 1, 0),
                              Position = UDim2.new(0.5, -3, 0, 0),
                              Name = "SkinLabel",
                              Parent = ArmorEntry.Container,
                        })

                        Globals:Tween(self.Components.Armor, TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad), {
                              Size = UDim2.new(0, 215, 0, 30) + UDim2.new(0, 0, 0, self.Count * 19),
                        });
                  end;
            end

            function Armor:UpdateArmor(ArmorName, ArmorSkin, Remove)
                  local Container = self.Components["ArmorList"]:FindFirstChild(ArmorName)

                  if Container then
                        if ArmorSkin then
                              Container.SkinLabel.Text = ArmorSkin
                        end

                        if Remove then
                              self.Count -= 1
                              Container:Destroy()

                              Globals:Tween(
                                    self.Components.Armor,
                                    TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                    {
                                          Size = UDim2.new(0, 215, 0, 30) + UDim2.new(0, 0, 0, self.Count * 19),
                                    }
                              )
                        end
                  else
                        if ArmorName and ArmorSkin then
                              self:Add(ArmorName, ArmorSkin)
                        end
                  end

                  Globals:Tween(self.Components.ArmorShadow, TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad), {
                        ImageTransparency = self.Count > 0 and 0 or 0.8,
                  })
            end

            function Armor:ClearAll()
                  for _, child in ipairs(self.Components["ArmorList"]:GetChildren()) do
                        if child:IsA("Frame") and child:GetAttribute("IsContainer") then
                              child:Destroy()
                        end
                  end
                  self.Count = 0

                  Globals:Tween(self.Components.Armor, TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad), {
                        Size = UDim2.new(0, 215, 0, 45),
                  })

                  Globals:Tween(self.Components.ArmorShadow, TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad), {
                        ImageTransparency = 0.8,
                  })
            end

            return Armor
      end;

      function Library:CreateWatermark(txt)
            local Components = {}

            Components["Watermark"] = Globals:Instance("Frame", {
                  BackgroundColor3 = Color3.fromRGB(14, 14, 14),
                  BorderColor3 = Color3.fromRGB(0, 0, 0),
                  BorderSizePixel = 0,
                  Position = UDim2.new(0, 400, 0, 20),
                  Size = UDim2.new(0, 35, 0, 24),
                  Name = "Watermark",
                  Parent = Library.HeadsUp,
            })

            Components["WatermarkCorner"] = Globals:Instance("UICorner", {
                  CornerRadius = UDim.new(0, 4),
                  Name = "WatermarkCorner",
                  Parent = Components["Watermark"],
            })

            Components["WatermarkStroke"] = Globals:Instance("UIStroke", {
                  Color = Color3.fromRGB(24, 24, 24),
                  Name = "WatermarkStroke",
                  Parent = Components["Watermark"],
            })

            Components["WatermarkLogo"] = Globals:Instance("ImageLabel", {
                  Image = Library.LogoImage,
                  ImageColor3 = Library.Theme.Accent,
                  AnchorPoint = Vector2.new(0.5, 0.5),
                  BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                  BackgroundTransparency = 1,
                  BorderColor3 = Color3.fromRGB(0, 0, 0),
                  BorderSizePixel = 0,
                  Position = UDim2.new(0, 13, 0.5, 0),
                  Size = UDim2.new(0, 25, 0, 25),
                  Name = "WatermarkLogo",
                  Parent = Components["Watermark"],
            })

            Components["WatermarkText"] = Globals:Instance("TextLabel", {
                  Font = Enum.Font.SourceSansSemibold,
                  Text = txt,
                  TextColor3 = Color3.fromRGB(255, 255, 255),
                  TextSize = 14,
                  AutomaticSize = Enum.AutomaticSize.X,
                  BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                  BackgroundTransparency = 1,
                  BorderColor3 = Color3.fromRGB(0, 0, 0),
                  BorderSizePixel = 0,
                  Position = UDim2.new(0, 25, 0, 0),
                  Size = UDim2.new(0, 0, 1, 0),
                  Name = "WatermarkText",
                  Parent = Components["Watermark"],
            })

            Components["WatermarkShadowHolder"] = Globals:Instance("Frame", {
                  BackgroundTransparency = 1,
                  BorderSizePixel = 0,
                  Size = UDim2.new(1, 0, 1, 0),
                  ZIndex = 0,
                  Name = "WatermarkShadowHolder",
                  Parent = Components["Watermark"],
            })

            Components["WatermarkShadow"] = Globals:Instance("ImageLabel", {
                  Image = Library.ShadowImage,
                  ImageColor3 = Color3.fromRGB(0, 0, 0),
                  ImageTransparency = 0.5899999737739563,
                  ScaleType = Enum.ScaleType.Slice,
                  SliceCenter = Rect.new(49, 49, 450, 450),
                  AnchorPoint = Vector2.new(0.5, 0.5),
                  BackgroundTransparency = 1,
                  BorderSizePixel = 0,
                  Position = UDim2.new(0.505405426, 0, 0.501500428, 0),
                  Size = UDim2.new(0.935135126, 47, 0.5, 47),
                  ZIndex = 0,
                  Name = "WatermarkShadow",
                  Parent = Components["WatermarkShadowHolder"],
            })

            function Components:SetText(txt)
                  local label = Instance.new("TextLabel")
                  label.Text = txt
                  label.TextSize = 14
                  label.Font = Enum.Font.SourceSansSemibold
                  label.Position = UDim2.new(-5, 0, 0, 0)
                  label.Visible = true
                  label.Parent = Library.HeadsUp
                  task.wait(0.3)
                  Components["WatermarkText"].Text = ""

                  task.spawn(function()
                        for i = 1, #txt do
                              Components["WatermarkText"].Text = string.sub(txt, 1, i)
                              task.wait(0.03)
                        end
                  end)

                  local TextBounds = label.TextBounds
                  Globals:Tween(Components.Watermark, TweenInfo.new(0.3, Enum.EasingStyle.Quad), {
                        Size = UDim2.new(0, 35 + TextBounds.X, 0, Components.Watermark.Size.Y.Offset),
                  })
            end
            return Components
      end

      function Library:CreateLoader(Data)
            local Loader = {
                  Expiry = Data.Expiry,
            }
            Loader.__index = Loader

            local Components = {}

            local SelectedGame = ""
            local SelectedType = ""

            do --// Components
                  Components["Loader"] = Globals:Instance("ScreenGui", {
                        IgnoreGuiInset = true,
                        Name = "Loader",
                        Parent = CoreGui,
                  })

                  Components["LoaderOutline"] = Globals:Instance("TextButton", {
                        Font = Enum.Font.SourceSans,
                        Text = "",
                        TextColor3 = Color3.fromRGB(0, 0, 0),
                        TextSize = 14,
                        AutoButtonColor = false,
                        AnchorPoint = Vector2.new(0.5, 0.5),
                        BackgroundColor3 = Color3.fromRGB(12, 12, 12),
                        BorderColor3 = Color3.fromRGB(0, 0, 0),
                        BorderSizePixel = 0,
                        Position = UDim2.new(0.5, 0, 2, 0),
                        Size = UDim2.new(0, 400, 0, 329),
                        Name = "LoaderOutline",
                        Parent = Components["Loader"],
                  })

                  Components["LoaderUICorner"] = Globals:Instance("UICorner", {
                        CornerRadius = UDim.new(0, 3),
                        Name = "LoaderUICorner",
                        Parent = Components["LoaderOutline"],
                  })

                  Components["LoaderUIStroke"] = Globals:Instance("UIStroke", {
                        Color = Color3.fromRGB(24, 24, 24),
                        Name = "LoaderUIStroke",
                        Parent = Components["LoaderOutline"],
                  })

                  Components["DropShadowHolder"] = Globals:Instance("Frame", {
                        BackgroundTransparency = 1,
                        BorderSizePixel = 0,
                        Size = UDim2.new(1, 0, 1, 0),
                        Name = "DropShadowHolder",
                        Parent = Components["LoaderOutline"],
                  })

                  Components["DropShadow"] = Globals:Instance("ImageLabel", {
                        Image = Library.ShadowImage,
                        ImageColor3 = Color3.fromRGB(0, 0, 0),
                        ImageTransparency = 0.12,
                        ScaleType = Enum.ScaleType.Slice,
                        SliceCenter = Rect.new(49, 49, 450, 450),
                        AnchorPoint = Vector2.new(0.5, 0.5),
                        BackgroundTransparency = 1,
                        BorderSizePixel = 0,
                        Position = UDim2.new(0.5, 0, 0.5, 0),
                        Size = UDim2.new(1, 47, 1, 47),
                        ZIndex = 0,
                        Name = "DropShadow",
                        Parent = Components["DropShadowHolder"],
                  })

                  Components["LoaderTitleArea"] = Globals:Instance("Frame", {
                        BackgroundColor3 = Color3.fromRGB(14, 14, 14),
                        BorderColor3 = Color3.fromRGB(0, 0, 0),
                        BorderSizePixel = 0,
                        Size = UDim2.new(1, 0, 0, 30),
                        Name = "LoaderTitleArea",
                        Parent = Components["LoaderOutline"],
                  })

                  Components["LoaderTitleCorner"] = Globals:Instance("UICorner", {
                        CornerRadius = UDim.new(0, 3),
                        Name = "LoaderTitleCorner",
                        Parent = Components["LoaderTitleArea"],
                  })

                  Components["LoaderTitleOutline"] = Globals:Instance("Frame", {
                        BackgroundColor3 = Color3.fromRGB(24, 24, 24),
                        BorderColor3 = Color3.fromRGB(0, 0, 0),
                        BorderSizePixel = 0,
                        Position = UDim2.new(0, 0, 1, 0),
                        Size = UDim2.new(1, 0, 0, 1),
                        Name = "LoaderTitleOutline",
                        Parent = Components["LoaderTitleArea"],
                  })

                  Components["IridescentLogo"] = Globals:Instance("ImageLabel", {
                        Image = Library.LogoImage,
                        AnchorPoint = Vector2.new(0, 0.5),
                        BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                        BackgroundTransparency = 1,
                        BorderSizePixel = 0,
                        Position = UDim2.new(0, 3, 0.5, 0),
                        Size = UDim2.new(0, 25, 0, 25),
                        Name = "IridescentLogo",
                        Parent = Components["LoaderTitleArea"],
                  })

                  Components["IridescentTitle"] = Globals:Instance("TextLabel", {
                        Font = Enum.Font.SourceSansBold,
                        Text = "Iridescent",
                        TextColor3 = Color3.fromRGB(255, 255, 255),
                        TextSize = 14,
                        TextXAlignment = Enum.TextXAlignment.Left,
                        BackgroundTransparency = 1,
                        BorderSizePixel = 0,
                        Position = UDim2.new(0, 30, 0, 0),
                        Size = UDim2.new(0, 200, 1, 0),
                        Name = "IridescentTitle",
                        Parent = Components["LoaderTitleArea"],
                  })

                  Components["Workspace"] = Globals:Instance("Frame", {
                        BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                        BackgroundTransparency = 1,
                        BorderSizePixel = 0,
                        Position = UDim2.new(0, 20, 0, 50),
                        Size = UDim2.new(1, -40, 1, -70),
                        Name = "Workspace",
                        Parent = Components["LoaderOutline"],
                  })

                  Components["WorkspaceHider"] = Components["Workspace"]:Clone()
                  Components["WorkspaceHider"].Parent = Components["LoaderOutline"]
                  Components["WorkspaceHider"].Size = UDim2.new(1, 0, 1, -30)
                  Components["WorkspaceHider"].AnchorPoint = Vector2.new(0, 0)
                  Components["WorkspaceHider"].Position = UDim2.new(0, 0, 0, 30)
                  Components.WorkspaceHider.Name = "WorkspaceHider"
                  Components.WorkspaceHider.ZIndex = 10
                  Components.WorkspaceHider.BackgroundColor3 = Color3.fromRGB(11, 11, 11)

                  Components["Products"] = Globals:Instance("Frame", {
                        BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                        BackgroundTransparency = 1,
                        BorderSizePixel = 0,
                        Position = UDim2.new(0, -5, 0, 0),
                        Size = UDim2.new(0, 175, 1, 0),
                        Name = "Products",
                        Parent = Components["Workspace"],
                  })

                  Components["ProductsLayout"] = Globals:Instance("UIListLayout", {
                        Padding = UDim.new(0, 10),
                        SortOrder = Enum.SortOrder.LayoutOrder,
                        Name = "ProductsLayout",
                        Parent = Components["Products"],
                  })

                  Components["GameStatus1"] = Globals:Instance("Frame", {
                        BackgroundTransparency = 1,
                        BorderSizePixel = 0,
                        Position = UDim2.new(0, 191, 0, 0),
                        Size = UDim2.new(0, 175, 1, 0),
                        Name = "GameStatus",
                        Parent = Components["Workspace"],
                  })

                  Components["GameImageArea"] = Globals:Instance("Frame", {
                        BackgroundColor3 = Color3.fromRGB(14, 14, 14),
                        BorderSizePixel = 0,
                        Size = UDim2.new(1, 0, 0, 125),
                        Name = "GameImageArea",
                        Parent = Components["GameStatus1"],
                  })

                  Components["GameImageAreaCorner"] = Globals:Instance("UICorner", {
                        CornerRadius = UDim.new(0, 3),
                        Parent = Components["GameImageArea"],
                  })

                  Components["GameImageAreaStroke"] = Globals:Instance("UIStroke", {
                        Color = Color3.fromRGB(24, 24, 24),
                        Parent = Components["GameImageArea"],
                  })

                  Components["GameImage1"] = Globals:Instance("ImageLabel", {
                        Image = "",
                        ImageTransparency = 0.4,
                        AnchorPoint = Vector2.new(0.5, 0.5),
                        BackgroundTransparency = 1,
                        BorderSizePixel = 0,
                        Position = UDim2.new(0.5, 0, 0.5, 0),
                        Size = UDim2.new(1, -10, 1, -10),
                        Name = "GameImage",
                        Parent = Components["GameImageArea"],
                  })

                  Components["GameImageCorner"] = Globals:Instance("UICorner", {
                        CornerRadius = UDim.new(0, 3),
                        Parent = Components["GameImage1"],
                  })

                  Components["GameImageStroke"] = Globals:Instance("UIStroke", {
                        Color = Color3.fromRGB(24, 24, 24),
                        Parent = Components["GameImage1"],
                  })

                  Components["GameDetectedStatus"] = Globals:Instance("Frame", {
                        BackgroundColor3 = Color3.fromRGB(14, 14, 14),
                        BorderSizePixel = 0,
                        Position = UDim2.new(0, 0, 0, 135),
                        Size = UDim2.new(1, 0, 0, 36),
                        Name = "GameDetectedStatus",
                        Parent = Components["GameStatus1"],
                  })

                  Components["GameDetectedStatusCorner"] = Globals:Instance("UICorner", {
                        CornerRadius = UDim.new(0, 3),
                        Parent = Components["GameDetectedStatus"],
                  })

                  Components["GameDetectedStatusStroke"] = Globals:Instance("UIStroke", {
                        Color = Color3.fromRGB(24, 24, 24),
                        Parent = Components["GameDetectedStatus"],
                  })

                  Components["Status"] = Globals:Instance("TextLabel", {
                        Font = Enum.Font.SourceSansBold,
                        Text = "Undetected",
                        TextColor3 = Color3.fromRGB(255, 255, 255),
                        TextSize = 14,
                        TextXAlignment = Enum.TextXAlignment.Left,
                        BackgroundTransparency = 1,
                        BorderSizePixel = 0,
                        Position = UDim2.new(0, 5, 0, 16),
                        Size = UDim2.new(1, -20, 0, 20),
                        Name = "Status",
                        Parent = Components["GameDetectedStatus"],
                  })

                  Components["StatusTitle"] = Globals:Instance("TextLabel", {
                        Font = Enum.Font.SourceSansSemibold,
                        Text = "S T A T U S",
                        TextColor3 = Color3.fromRGB(158, 158, 158),
                        TextSize = 14,
                        TextXAlignment = Enum.TextXAlignment.Left,
                        BackgroundTransparency = 1,
                        BorderSizePixel = 0,
                        Position = UDim2.new(0, 5, 0, 1),
                        Size = UDim2.new(1, -20, 0, 20),
                        Name = "StatusTitle",
                        Parent = Components["GameDetectedStatus"],
                  })

                  Components["Expiry"] = Globals:Instance("Frame", {
                        BackgroundColor3 = Color3.fromRGB(14, 14, 14),
                        BorderSizePixel = 0,
                        Position = UDim2.new(0, 0, 0, 180),
                        Size = UDim2.new(1, 0, 0, 36),
                        Name = "Expiry",
                        Parent = Components["GameStatus1"],
                  })

                  Components["ExpiryCorner"] = Globals:Instance("UICorner", {
                        CornerRadius = UDim.new(0, 3),
                        Parent = Components["Expiry"],
                  })

                  Components["ExpiryStroke"] = Globals:Instance("UIStroke", {
                        Color = Color3.fromRGB(24, 24, 24),
                        Parent = Components["Expiry"],
                  })

                  Components["ExpiryDate"] = Globals:Instance("TextLabel", {
                        Font = Enum.Font.SourceSansBold,
                        Text = "7/30/26",
                        TextColor3 = Color3.fromRGB(255, 255, 255),
                        TextSize = 14,
                        TextXAlignment = Enum.TextXAlignment.Left,
                        BackgroundTransparency = 1,
                        BorderSizePixel = 0,
                        Position = UDim2.new(0, 5, 0, 16),
                        Size = UDim2.new(1, -20, 0, 20),
                        Name = "ExpiryDate",
                        Parent = Components["Expiry"],
                  })

                  Components["ExpiryTitle"] = Globals:Instance("TextLabel", {
                        Font = Enum.Font.SourceSansSemibold,
                        Text = Loader.Expiry,
                        TextColor3 = Color3.fromRGB(158, 158, 158),
                        TextSize = 14,
                        TextXAlignment = Enum.TextXAlignment.Left,
                        BackgroundTransparency = 1,
                        BorderSizePixel = 0,
                        Position = UDim2.new(0, 5, 0, 1),
                        Size = UDim2.new(1, -20, 0, 20),
                        Name = "ExpiryTitle",
                        Parent = Components["Expiry"],
                        Text = "E X P I R Y",
                  })

                  Components["LaunchButton"] = Globals:Instance("TextButton", {
                        Font = Enum.Font.SourceSansBold,
                        Text = "Launch",
                        TextColor3 = Color3.fromRGB(255, 255, 255),
                        TextSize = 14,
                        AutoButtonColor = false,
                        BackgroundColor3 = Color3.fromRGB(14, 14, 14),
                        BorderSizePixel = 0,
                        Position = UDim2.new(0, 0, 0, 227),
                        Size = UDim2.new(1, 0, 0, 40),
                        Name = "LaunchButton",
                        Parent = Components["GameStatus1"],
                  })

                  Components["LaunchStroke"] = Globals:Instance("UIStroke", {
                        ApplyStrokeMode = Enum.ApplyStrokeMode.Border,
                        Color = Color3.fromRGB(24, 24, 24),
                        Parent = Components["LaunchButton"],
                  })

                  Components["LaunchCorner"] = Globals:Instance("UICorner", {
                        CornerRadius = UDim.new(0, 3),
                        Parent = Components["LaunchButton"],
                  })

                  task.wait(0.15)

                  Globals:Tween(Components.LoaderOutline, TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad), {
                        Position = UDim2.new(0.5, 0, 0.5, 0),
                  })

                  Library:Connection("LaunchDown", Components.LaunchButton.MouseButton1Down, function()
                        task.spawn(function()
                              Globals:Tween(
                                    Components.LaunchStroke,
                                    TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                    { Color = Library.Theme.Accent }
                              )
                              Globals:Tween(
                                    Components["LaunchButton"],
                                    TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                    {
                                          BackgroundColor3 = Library.Theme.Accent,
                                    }
                              )
                              task.wait(0.2)
                              Globals:Tween(
                                    Components["LaunchButton"],
                                    TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                    {
                                          BackgroundColor3 = Color3.fromRGB(14, 14, 14),
                                    }
                              )
                        end)

                        Loader:Launch(SelectedGame, SelectedType)
                  end)

                  Library:Connection("LaunchEnter", Components.LaunchButton.MouseEnter, function()
                        Globals:Tween(Components.LaunchStroke, TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad), {
                              Color = Library.Theme.Accent,
                        })
                  end)

                  Library:Connection("LaunchLeave", Components.LaunchButton.MouseLeave, function()
                        Globals:Tween(Components.LaunchStroke, TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad), {
                              Color = Color3.fromRGB(24, 24, 24),
                        })
                  end)
            end

            local Selected

            function Loader:NewGame(Name, Type, Image)
                  local GameComponents = {}

                  GameComponents["NewGame"] = Globals:Instance("TextButton", {
                        Font = Enum.Font.SourceSans,
                        Text = "",
                        TextColor3 = Color3.fromRGB(0, 0, 0),
                        TextSize = 14,
                        AutoButtonColor = false,
                        BackgroundColor3 = Color3.fromRGB(14, 14, 14),
                        BorderSizePixel = 0,
                        Position = UDim2.new(0.05, 0, 0.00619195, 0),
                        Size = UDim2.new(1, 0, 0.0247678, 50),
                        Name = "NewGame",
                        Parent = Components["Products"],
                  })

                  GameComponents["NewGameCorner"] = Globals:Instance("UICorner", {
                        CornerRadius = UDim.new(0, 3),
                        Name = "NewGameCorner",
                        Parent = GameComponents["NewGame"],
                  })

                  GameComponents["NewGameStroke"] = Globals:Instance("UIStroke", {
                        ApplyStrokeMode = Enum.ApplyStrokeMode.Border,
                        Color = Color3.fromRGB(24, 24, 24),
                        Name = "NewGameStroke",
                        Parent = GameComponents["NewGame"],
                  })

                  GameComponents["GameTitle"] = Globals:Instance("TextLabel", {
                        Font = Enum.Font.SourceSansSemibold,
                        Text = Name .. " " .. Type,
                        TextColor3 = Color3.fromRGB(255, 255, 255),
                        TextSize = 14,
                        TextXAlignment = Enum.TextXAlignment.Left,
                        BackgroundTransparency = 1,
                        BorderSizePixel = 0,
                        Position = UDim2.new(0, 8, 0, 36),
                        Size = UDim2.new(1, -10, 0, 10),
                        ZIndex = 2,
                        Name = "GameTitle",
                        Parent = GameComponents["NewGame"],
                  })

                  GameComponents["GameImage"] = Globals:Instance("ImageLabel", {
                        Image = Image,
                        BackgroundTransparency = 1,
                        BorderSizePixel = 0,
                        Position = UDim2.new(0, 8, 0, 5),
                        Size = UDim2.new(0, 20, 0, 20),
                        ZIndex = 2,
                        Name = "GameImage",
                        Parent = GameComponents["NewGame"],
                  })

                  GameComponents["UICorner"] = Globals:Instance("UICorner", {
                        CornerRadius = UDim.new(1, 0),
                        Parent = GameComponents["GameImage"],
                  })

                  GameComponents["GameStatus"] = Globals:Instance("Frame", {
                        BackgroundColor3 = Color3.fromRGB(41, 255, 130),
                        BorderSizePixel = 0,
                        Position = UDim2.new(0, 35, 0, 10),
                        Size = UDim2.new(0, 10, 0, 10),
                        Name = "GameStatus",
                        Parent = GameComponents["NewGame"],
                  })

                  GameComponents["UICorner1"] = Globals:Instance("UICorner", {
                        CornerRadius = UDim.new(1, 0),
                        Parent = GameComponents["GameStatus"],
                  })

                  Library:Connection(Name .. Type .. "Down", GameComponents.NewGame.MouseButton1Down, function()
                        Selected = GameComponents.NewGame
                        SelectedGame = Name
                        SelectedType = Type

                        for Index, GameButton in Components.Products:GetChildren() do
                              if GameButton.Name == "NewGame" then
                                    local Stroke = GameButton:FindFirstChild("NewGameStroke")

                                    Globals:Tween(GameButton, TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad), {
                                          BackgroundColor3 = Color3.fromRGB(14, 14, 14),
                                    })

                                    Globals:Tween(Stroke, TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad), {
                                          Color = Color3.fromRGB(24, 24, 24),
                                    })
                              end
                        end

                        task.spawn(function()
                              Globals:Tween(
                                    GameComponents.NewGameStroke,
                                    TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                    {
                                          Color = Library.Theme.Accent,
                                    }
                              )
                              Globals:Tween(
                                    GameComponents.NewGame,
                                    TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                    {
                                          BackgroundColor3 = Library.Theme.Accent,
                                    }
                              )
                              task.wait(0.2)
                              Globals:Tween(
                                    GameComponents.NewGame,
                                    TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                    {
                                          BackgroundColor3 = Color3.fromRGB(14, 14, 14),
                                    }
                              )
                        end)

                        task.spawn(function()
                              Globals:Tween(Components["GameImage1"], TweenInfo.new(0.1, Enum.EasingStyle.Quad), {
                                    ImageTransparency = 1,
                              })
                              task.wait(0.15)
                              Components["GameImage1"].Image = Image
                              Globals:Tween(Components["GameImage1"], TweenInfo.new(0.1, Enum.EasingStyle.Quad), {
                                    ImageTransparency = 0.4,
                              })
                        end)
                  end)

                  Library:Connection(Name .. Type .. "Enter", GameComponents.NewGame.MouseEnter, function()
                        Globals:Tween(
                              GameComponents.NewGameStroke,
                              TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                              { Color = Library.Theme.Accent }
                        )
                  end)

                  Library:Connection(Name .. Type .. "Leave", GameComponents.NewGame.MouseLeave, function()
                        if Selected ~= GameComponents.NewGame then
                              Globals:Tween(
                                    GameComponents.NewGameStroke,
                                    TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                    { Color = Color3.fromRGB(24, 24, 24) }
                              )
                        end
                  end)
            end

            function Loader:SetProgress(num)
                  Globals:Tween(Components["Progess"], TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad), {
                        Size = UDim2.new(num / 100, 0, 1, 0),
                  })

                  Components["ProgressPercent"].Text = tostring(math.floor(num)) .. "%"
            end

            function Loader:SetStage(stage)
                  Components["ProgressStage"].Text = "Iridescent | " .. stage
            end

            function Loader:Launch(Game, Type)
                  HookingEnabled = Type ~= "Lite"
                  task.wait(0.2)
                  local HideTween = Globals:Tween(Components.WorkspaceHider, TweenInfo.new(0.15, Enum.EasingStyle.Quad), {
                        BackgroundTransparency = 0,
                  })
                  task.spawn(function()
                        task.wait(0.15)
                        Globals:Tween(Components.LoaderOutline, TweenInfo.new(0.3, Enum.EasingStyle.Quad), {
                              Size = UDim2.new(0, 400, 0, 200),
                        })
                  end)

                  HideTween.Completed:Wait()
                  for _, Obj in Components.Workspace:GetChildren() do
                        Obj:Destroy()
                  end
                  task.wait(0.3)

                  do --// Components
                        Components["ProgressBar"] = Globals:Instance("Frame", {
                              AnchorPoint = Vector2.new(0.5, 0.5),
                              BackgroundColor3 = Color3.fromRGB(14, 14, 14),
                              BorderColor3 = Color3.fromRGB(0, 0, 0),
                              BorderSizePixel = 0,
                              Position = UDim2.new(0.5, 0, 0.5, 20),
                              Size = UDim2.new(0, 200, 0, 20),
                              Name = "ProgressBar",
                              Parent = Components["LoaderOutline"],
                        })

                        Components["ProgressBarStroke"] = Globals:Instance("UIStroke", {
                              Color = Color3.fromRGB(24, 24, 24),
                              Name = "ProgressBarStroke",
                              Parent = Components["ProgressBar"],
                        })

                        Components["ProgressBarCorner"] = Globals:Instance("UICorner", {
                              CornerRadius = UDim.new(0, 3),
                              Name = "ProgressBarCorner",
                              Parent = Components["ProgressBar"],
                        })

                        Components["Progess"] = Globals:Instance("Frame", {
                              BackgroundColor3 = Color3.fromRGB(63, 201, 176),
                              BorderColor3 = Color3.fromRGB(0, 0, 0),
                              BorderSizePixel = 0,
                              Size = UDim2.new(0, 0, 1, 0),
                              Name = "Progess",
                              Parent = Components["ProgressBar"],
                        })

                        Components["ProgessCorner"] = Globals:Instance("UICorner", {
                              CornerRadius = UDim.new(0, 3),
                              Name = "ProgessCorner",
                              Parent = Components["Progess"],
                        })

                        Components["ProgressPercent"] = Globals:Instance("TextLabel", {
                              Font = Enum.Font.SourceSansBold,
                              Text = "",
                              TextColor3 = Color3.fromRGB(255, 255, 255),
                              TextSize = 14,
                              BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                              BackgroundTransparency = 1,
                              BorderColor3 = Color3.fromRGB(0, 0, 0),
                              BorderSizePixel = 0,
                              Size = UDim2.new(1, 0, 1, 0),
                              Name = "ProgressPercent",
                              Parent = Components["ProgressBar"],
                        })

                        Components["ProgressPercentStroke"] = Globals:Instance("UIStroke", {
                              Thickness = 0.9,
                              Name = "ProgressPercentStroke",
                              Parent = Components["ProgressPercent"],
                        })

                        Components["ProgressStage"] = Globals:Instance("TextLabel", {
                              Font = Enum.Font.SourceSansBold,
                              Text = "Iridescent",
                              TextColor3 = Color3.fromRGB(255, 255, 255),
                              TextSize = 14,
                              BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                              BackgroundTransparency = 1,
                              BorderColor3 = Color3.fromRGB(0, 0, 0),
                              BorderSizePixel = 0,
                              Position = UDim2.new(0, 0, -1, -5),
                              Size = UDim2.new(1, 0, 1, 0),
                              Name = "ProgressStage",
                              Parent = Components["ProgressBar"],
                        })

                        Components["IridescentLogo"] = Globals:Instance("ImageLabel", {
                              Image = Library.LogoImage,
                              AnchorPoint = Vector2.new(0.5, 0.5),
                              BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                              BackgroundTransparency = 1,
                              BorderColor3 = Color3.fromRGB(0, 0, 0),
                              BorderSizePixel = 0,
                              Position = UDim2.new(0.5, 0, 0.5, -45),
                              Size = UDim2.new(0, 25, 0, 25),
                              Name = "IridescentLogo",
                              Parent = Components["ProgressBar"],
                        })
                  end

                  LoaderLaunched = true
                  Loader.BeginLoading = true

                  Globals:Tween(Components.WorkspaceHider, TweenInfo.new(0.15, Enum.EasingStyle.Quad), {
                        BackgroundTransparency = 1,
                  })

                  task.spawn(function()
                        while Components.ProgressStage do
                              task.wait()
                              if Components.ProgressStage:GetAttribute("Tweening") then
                                    break
                              end
                              Components.ProgressStage.TextTransparency = math.sin(tick() * 3) + 1 / 2
                        end
                  end)
            end

            Loader.Components = Components
            return Loader
      end

      function Library:Window(WindowData)
            local Window = {
                  Name = WindowData.Name,
                  Tabs = {},
                  Sections = {},
                  Components = {},
                  PlayerImage = WindowData.PlayerImage,
                  Open = true,
                  IsOpen = true,
            }

            Library.IsOpen = true;

            Window.ArmorPanel = self:CreateArmorPanel()
            Window.ModPanel = self:CreateModeratorsPanel()
            Window.Hotkeys = self:CreateHotkeysPanel()
            Window.__index = Window

            local Components = {}

            do --// Components
                  Components["UI"] = Globals:Instance("ScreenGui", {
                        IgnoreGuiInset = true,
                        ZIndexBehavior = Enum.ZIndexBehavior.Sibling,
                        Name = "UI",
                        Parent = CoreGui,
                        DisplayOrder = 3,
                  })

                  Components["Outline"] = Globals:Instance("TextButton", {
                        Font = Enum.Font.SourceSans,
                        Text = "",
                        TextColor3 = Color3.fromRGB(0, 0, 0),
                        TextSize = 14,
                        AutoButtonColor = false,
                        AnchorPoint = Vector2.new(0.5, 0.5),
                        BackgroundColor3 = Color3.fromRGB(11, 11, 11),
                        BorderColor3 = Color3.fromRGB(0, 0, 0),
                        BorderSizePixel = 0,
                        Position = UDim2.new(0.5, 0, 3, 0),
                        Size = UDim2.new(0, 650, 0, 470),
                        Name = "Outline",
                        Parent = Components["UI"],
                  })

                  -- WOW VIDEO!
                  Components["BackgroundVideo"] = Globals:Instance("VideoFrame", {
                        Size = UDim2.fromScale(1, 1);
                        Video = getcustomasset(ImagesFolder .. '/DerekLippeVideo.mp4');
                        Looped = true;
                        Name = "BackgroundVideo";
                        Parent = Components["Outline"];
                  })
                  Components["BackgroundVideo"]:Play();

                  Components["OutlineCorner"] = Globals:Instance("UICorner", {
                        CornerRadius = UDim.new(0, 3),
                        Name = "OutlineCorner",
                        Parent = Components["Outline"],
                  })

                  Components["WindowNotifications"] = Globals:Instance("Frame", {
                        Position = UDim2.new(1, 0, 1, 0),
                        AnchorPoint = Vector2.new(1, 1),
                        Size = UDim2.new(0, 200, 1, 0),
                        BackgroundTransparency = 1,
                        BorderSizePixel = 0,
                        Name = "Notifications",
                        Parent = Components.Outline,
                  })

                  Components["LeftSideElements"] = Globals:Instance("Frame", {
                        BackgroundColor3 = Color3.fromRGB(14, 14, 14),
                        BorderColor3 = Color3.fromRGB(0, 0, 0),
                        BorderSizePixel = 0,
                        Size = UDim2.new(0, 50, 1, 0),
                        Name = "LeftSideElements",
                        Parent = Components["Outline"],
                  })

                  Components["LeftSideElmentsCorner"] = Globals:Instance("UICorner", {
                        CornerRadius = UDim.new(0, 3),
                        Name = "LeftSideElmentsCorner",
                        Parent = Components["LeftSideElements"],
                  })

                  Components["LeftSideFixIGNORE"] = Globals:Instance("Frame", {
                        BackgroundColor3 = Color3.fromRGB(14, 14, 14),
                        BorderColor3 = Color3.fromRGB(0, 0, 0),
                        BorderSizePixel = 0,
                        Position = UDim2.new(1, -2, 0, 0),
                        Size = UDim2.new(0, 3, 1, 0),
                        Name = "LeftSideFixIGNORE",
                        Parent = Components["LeftSideElements"],
                  })

                  Components["LeftSideOutline"] = Globals:Instance("Frame", {
                        BackgroundColor3 = Color3.fromRGB(24, 24, 24),
                        BorderColor3 = Color3.fromRGB(0, 0, 0),
                        BorderSizePixel = 0,
                        Position = UDim2.new(1, 0, 0, 0),
                        Size = UDim2.new(0, 1, 1, 0),
                        Name = "LeftSideOutline",
                        Parent = Components["LeftSideFixIGNORE"],
                  })

                  Components["LogoSpace"] = Globals:Instance("Frame", {
                        BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                        BackgroundTransparency = 1,
                        BorderColor3 = Color3.fromRGB(0, 0, 0),
                        BorderSizePixel = 0,
                        Size = UDim2.new(1, 0, 0, 50),
                        Name = "LogoSpace",
                        Parent = Components["LeftSideElements"],
                  })

                  Components["Logo"] = Globals:Instance("ImageLabel", {
                        Image = Library.LogoImage,
                        AnchorPoint = Vector2.new(0.5, 0.5),
                        BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                        BackgroundTransparency = 1,
                        BorderColor3 = Color3.fromRGB(0, 0, 0),
                        BorderSizePixel = 0,
                        Position = UDim2.new(0.5, 0, 0.5, 0),
                        Size = UDim2.new(1, -10, 1, -10),
                        Name = "Logo",
                        Parent = Components["LogoSpace"],
                  })

                  Components["TabsHolder"] = Globals:Instance("Frame", {
                        BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                        BackgroundTransparency = 1,
                        BorderColor3 = Color3.fromRGB(0, 0, 0),
                        BorderSizePixel = 0,
                        Position = UDim2.new(0, 0, 0, 50),
                        Size = UDim2.new(1, 0, 1, -106),
                        Name = "TabsHolder",
                        Parent = Components["LeftSideElements"],
                  })

                  Components["TabsScrollingFrame"] = Globals:Instance("ScrollingFrame", {
                        AutomaticCanvasSize = Enum.AutomaticSize.Y,
                        CanvasSize = UDim2.new(1, 0, 1, 0),
                        ScrollBarImageColor3 = Color3.fromRGB(0, 0, 0),
                        ScrollBarImageTransparency = 1,
                        ScrollBarThickness = 0,
                        Active = true,
                        BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                        BackgroundTransparency = 1,
                        BorderColor3 = Color3.fromRGB(0, 0, 0),
                        BorderSizePixel = 0,
                        Position = UDim2.new(0, 0, 0, -3),
                        Size = UDim2.new(1, 0, 1, 3),
                        Name = "TabsScrollingFrame",
                        Parent = Components["TabsHolder"],
                  })

                  Components["ScrollingFrameListLayout"] = Globals:Instance("UIListLayout", {
                        Padding = UDim.new(0, 13),
                        SortOrder = Enum.SortOrder.LayoutOrder,
                        Name = "ScrollingFrameListLayout",
                        Parent = Components["TabsScrollingFrame"],
                  })

                  Components["UIPadding"] = Globals:Instance("UIPadding", {
                        PaddingLeft = UDim.new(0, 8),
                        PaddingTop = UDim.new(0, 1),
                        Parent = Components["TabsScrollingFrame"],
                  })

                  Components["TabFadeTop"] = Globals:Instance("Frame", {
                        BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                        BorderColor3 = Color3.fromRGB(0, 0, 0),
                        BorderSizePixel = 0,
                        Position = UDim2.new(0, 0, 0, -10),
                        Size = UDim2.new(1, 0, 0, 20),
                        Name = "TabFadeTop",
                        Parent = Components["TabsHolder"],
                  })

                  Components["TabFadeTopGradient"] = Globals:Instance("UIGradient", {
                        Color = ColorSequence.new({
                              ColorSequenceKeypoint.new(0, Color3.fromRGB(14, 14, 14)),
                              ColorSequenceKeypoint.new(1, Color3.fromRGB(14, 14, 14)),
                        }),
                        Rotation = 90,
                        Transparency = NumberSequence.new({
                              NumberSequenceKeypoint.new(0, 0.4),
                              NumberSequenceKeypoint.new(1, 1),
                        }),
                        Name = "TabFadeTopGradient",
                        Parent = Components["TabFadeTop"],
                  })

                  Components["TabFadeBottom"] = Globals:Instance("Frame", {
                        BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                        BorderColor3 = Color3.fromRGB(0, 0, 0),
                        BorderSizePixel = 0,
                        Position = UDim2.new(0, 0, 1, -20),
                        Size = UDim2.new(1, 0, 0, 20),
                        Name = "TabFadeBottom",
                        Parent = Components["TabsHolder"],
                  })

                  Components["TabFadeBottomGradient"] = Globals:Instance("UIGradient", {
                        Color = ColorSequence.new({
                              ColorSequenceKeypoint.new(0, Color3.fromRGB(14, 14, 14)),
                              ColorSequenceKeypoint.new(1, Color3.fromRGB(14, 14, 14)),
                        }),
                        Rotation = -90,
                        Transparency = NumberSequence.new({
                              NumberSequenceKeypoint.new(0, 0.4),
                              NumberSequenceKeypoint.new(1, 1),
                        }),
                        Name = "TabFadeBottomGradient",
                        Parent = Components["TabFadeBottom"],
                  })

                  Components["PlayerIconHolder"] = Globals:Instance("Frame", {
                        BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                        BackgroundTransparency = 1,
                        BorderColor3 = Color3.fromRGB(0, 0, 0),
                        BorderSizePixel = 0,
                        Position = UDim2.new(0, 0, 1, -50),
                        Size = UDim2.new(1, 0, 0, 50),
                        Name = "PlayerIconHolder",
                        Parent = Components["LeftSideElements"],
                  })

            --[[Components["PlayerImageButton"] = Globals:Instance("ImageLabel", {
                  Image = Window.PlayerImage or "",

                  AnchorPoint = Vector2.new(0.5, 0.5),
                  BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                  BackgroundTransparency = 1,
                  BorderColor3 = Color3.fromRGB(0, 0, 0),
                  BorderSizePixel = 0,
                  Position = UDim2.new(0.5, 0, 0.5, 0),
                  Size = UDim2.new(1, -25, 1, -25),
                  Name = "PlayerImageButton",
                  Parent = Components["PlayerIconHolder"],
                  Visible = false
            })]]

                  Components["PlayerImageCorner"] = Globals:Instance("UICorner", {
                        CornerRadius = UDim.new(1, 0),
                        Name = "PlayerImageCorner",
                        Parent = Components["PlayerImageButton"],
                  })

                  Components["TopSideElements"] = Globals:Instance("Frame", {
                        BackgroundColor3 = Color3.fromRGB(14, 14, 14),
                        BorderColor3 = Color3.fromRGB(0, 0, 0),
                        BorderSizePixel = 0,
                        Position = UDim2.new(0, 52, 0, 0),
                        Size = UDim2.new(1, -52, 0, 50),
                        Name = "TopSideElements",
                        Parent = Components["Outline"],
                        ClipsDescendants = true,
                  })

                  Components["TopSideElementsCorner"] = Globals:Instance("UICorner", {
                        CornerRadius = UDim.new(0, 3),
                        Name = "TopSideElementsCorner",
                        Parent = Components["TopSideElements"],
                  })

                  Components["TopSideElementsFix"] = Globals:Instance("Frame", {
                        BackgroundColor3 = Color3.fromRGB(14, 14, 14),
                        BorderColor3 = Color3.fromRGB(0, 0, 0),
                        BorderSizePixel = 0,
                        Position = UDim2.new(0, 0, 1, -2),
                        Size = UDim2.new(1, 0, 0, 3),
                        Name = "TopSideElementsFix",
                        Parent = Components["TopSideElements"],
                  })

                  Components["TopSideOutline"] = Globals:Instance("Frame", {
                        BackgroundColor3 = Color3.fromRGB(24, 24, 24),
                        BorderColor3 = Color3.fromRGB(0, 0, 0),
                        BorderSizePixel = 0,
                        Size = UDim2.new(1, 0, 0, 1),
                        Name = "TopSideOutline",
                        Parent = Components["TopSideElementsFix"],
                  })

                  Components["Categorys"] = Globals:Instance("Frame", {
                        AnchorPoint = Vector2.new(0, 0.5),
                        BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                        BackgroundTransparency = 1,
                        BorderColor3 = Color3.fromRGB(0, 0, 0),
                        BorderSizePixel = 0,
                        Position = UDim2.new(0, 15, 0.5, 0),
                        Size = UDim2.new(1, -30, 1, -30),
                        Name = "Categorys",
                        Parent = Components["TopSideElements"],
                  })

                  Components["Pages"] = Globals:Instance("Frame", {
                        BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                        BackgroundTransparency = 1,
                        BorderColor3 = Color3.fromRGB(0, 0, 0),
                        BorderSizePixel = 0,
                        Position = UDim2.new(0, 64, 0, 62),
                        Size = UDim2.new(0, 573, 0, 395),
                        Name = "Pages",
                        Parent = Components["Outline"],
                  })

                  Components["PageHider"] = Globals:Instance("Frame", {
                        BackgroundColor3 = Color3.fromRGB(11, 11, 11),
                        BackgroundTransparency = 0,
                        BorderColor3 = Color3.fromRGB(0, 0, 0),
                        BorderSizePixel = 0,
                        Position = UDim2.new(0, 64, 0, 62),
                        Size = UDim2.new(0, 573, 0, 395),
                        Name = "PageHider",
                        Parent = Components["Outline"],
                  })

                  Components["PageFadeBottom"] = Globals:Instance("Frame", {
                        BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                        BorderColor3 = Color3.fromRGB(0, 0, 0),
                        BorderSizePixel = 0,
                        Position = UDim2.new(0, 0, 1, -20),
                        Size = UDim2.new(1, 0, 0, 20),
                        Name = "PageFadeBottom",
                        Parent = Components["Pages"],
                        ZIndex = 2000,
                  })

                  Components["PageFadeTopGradient"] = Globals:Instance("UIGradient", {
                        Color = ColorSequence.new({
                              ColorSequenceKeypoint.new(0, Color3.fromRGB(11, 11, 11)),
                              ColorSequenceKeypoint.new(1, Color3.fromRGB(11, 11, 11)),
                        }),
                        Rotation = -90,
                        Transparency = NumberSequence.new({
                              NumberSequenceKeypoint.new(0, 0),
                              NumberSequenceKeypoint.new(0.43, 1),
                              NumberSequenceKeypoint.new(1, 1),
                        }),
                        Name = "PageFadeTopGradient",
                        Parent = Components["PageFadeBottom"],
                  })

                  Components["PageFadeTop"] = Globals:Instance("Frame", {
                        BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                        BorderColor3 = Color3.fromRGB(0, 0, 0),
                        BorderSizePixel = 0,
                        Position = UDim2.new(0, 0, 0, -2),
                        Size = UDim2.new(1, 0, 0, 20),
                        Name = "PageFadeTop",
                        Parent = Components["Pages"],
                        ZIndex = 2000,
                  })

                  Components["PageFadeTopGradient1"] = Globals:Instance("UIGradient", {
                        Color = ColorSequence.new({
                              ColorSequenceKeypoint.new(0, Color3.fromRGB(11, 11, 11)),
                              ColorSequenceKeypoint.new(1, Color3.fromRGB(11, 11, 11)),
                        }),
                        Rotation = 90,
                        Transparency = NumberSequence.new({
                              NumberSequenceKeypoint.new(0, 0),
                              NumberSequenceKeypoint.new(0.43, 1),
                              NumberSequenceKeypoint.new(1, 1),
                        }),
                        Name = "PageFadeTopGradient",
                        Parent = Components["PageFadeTop"],
                  })

                  Components["OutlineShadowHolder"] = Globals:Instance("Frame", {
                        BackgroundTransparency = 1,
                        BorderSizePixel = 0,
                        Size = UDim2.new(1, 0, 1, 0),
                        ZIndex = 0,
                        Name = "OutlineShadowHolder",
                        Parent = Components["Outline"],
                  })

                  Components["OutlineShadow"] = Globals:Instance("ImageLabel", {
                        Image = Library.OutlineShadowImage,
                        ImageColor3 = Color3.fromRGB(0, 0, 0),

                        ImageTransparency = 0.3,
                        ScaleType = Enum.ScaleType.Slice,
                        SliceCenter = Rect.new(49, 49, 450, 450),
                        AnchorPoint = Vector2.new(0.5, 0.5),
                        BackgroundTransparency = 1,
                        BorderSizePixel = 0,
                        Position = UDim2.new(0.5, 0, 0.5, 0),
                        Size = UDim2.new(1, 47, 1, 47),
                        ZIndex = 0,
                        Name = "OutlineShadow",
                        Parent = Components["OutlineShadowHolder"],
                  })
            end

            do --// Dragging and Window visibility
                  local Dragging = false
                  local DragStart = nil
                  local StartPosition = nil

                  Components["Outline"].InputBegan:Connect(function(input)
                        if input.UserInputType == Enum.UserInputType.MouseButton1 and not Window.InDrag then
                              Dragging = true
                              DragStart = input.Position
                              StartPosition = Components["Outline"].Position
                              input.Changed:Connect(function()
                                    if input.UserInputState == Enum.UserInputState.End then
                                          Dragging = false
                                    end
                              end)
                        end
                  end)

                  UserInputService.InputChanged:Connect(function(input)
                        if Dragging and input.UserInputType == Enum.UserInputType.MouseMovement then
                              local delta = input.Position - DragStart
                              local newPosition = UDim2.new(
                                    StartPosition.X.Scale,
                                    StartPosition.X.Offset + delta.X,
                                    StartPosition.Y.Scale,
                                    StartPosition.Y.Offset + delta.Y
                              )

                              TweenService:Create(
                                    Components["Outline"],
                                    TweenInfo.new(0.25, Enum.EasingStyle.Quad, Enum.EasingDirection.Out),
                                    { Position = newPosition }
                              ):Play()
                        end
                  end)

                  UserInputService.InputBegan:Connect(function(inp)
                        if inp.KeyCode == Enum.KeyCode.RightShift and not UserInputService:GetFocusedTextBox() then
                              Window.Open = not Window.Open
                              Library.IsOpen = Window.Open
                              Window:SetVisibility(Window.Open)
                        end
                  end)
            end

            function Window:Notify(txt, duration)
                  -- todo
            end

            function Window:OpenWindow()
                  local outline = self.Components.Outline
                  self.Components.UI.Enabled = true

                  local currentX = outline.Position.X
                  local targetPosition = UDim2.new(currentX.Scale, currentX.Offset, 0.5, 0)

                  if self.CurrentTween then
                        self.CurrentTween:Cancel()
                        self.CurrentTween = nil
                  end

                  outline.Position = UDim2.new(currentX.Scale, currentX.Offset, outline.Position.Y.Scale, outline.Position.Y.Offset)

                  self.CurrentTween = Globals:Tween(outline, TweenInfo.new(0.25), {
                        Position = targetPosition,
                  })

                  local completedConnection
                  completedConnection = self.CurrentTween.Completed:Connect(function()
                        self.CurrentTween = nil
                        self.IsOpen = true
                        if completedConnection then completedConnection:Disconnect() end
                  end)
            end

            function Window:Close()
                  local outline = self.Components.Outline

                  if self.CurrentTween then
                        self.CurrentTween:Cancel()
                        self.CurrentTween = nil
                  end

                  local currentX = outline.Position.X

                  self.CurrentTween = Globals:Tween(outline, TweenInfo.new(0.25), {
                        Position = UDim2.new(currentX.Scale, currentX.Offset, 2, 0),
                  })

                  local completedConnection
                  completedConnection = self.CurrentTween.Completed:Connect(function()
                        self.CurrentTween = nil
                        self.Components.UI.Enabled = false
                        self.IsOpen = false
                        if completedConnection then 
                              completedConnection:Disconnect() 
                        end
                  end)
            end

            function Window:SetVisibility(force)
                  if self.CurrentTween then
                        self.CurrentTween:Cancel()
                        self.CurrentTween = nil
                  end

                  local TargetOpen = (force ~= nil) and force or not self.IsOpen
                  self.Open = TargetOpen
                  self.IsOpen = TargetOpen

                  if TargetOpen then
                        self:OpenWindow()
                  else
                        self:Close()
                  end
            end

            function Window:SetTab(Tab)
                  local TabsContainer = self.Components["TabsScrollingFrame"]
                  local TabCategories = self.Components["Categorys"]
                  local Pages = self.Components["Pages"]
                  local FirstCategory = Tab.Categories[Tab.CategoryOrder[1]]
                  local CatToSet

                  --// Category slide Out animation
                  task.spawn(function()
                        Globals:Tween(
                              self.Components.Categorys,
                              TweenInfo.new(Library.CategoryTransitionSpeed, Enum.EasingStyle.Quad),
                              {
                                    Position = UDim2.new(-0.7, 0, 0.5, 0),
                              }
                        )
                  end)

                  --// Set category
                  task.spawn(function()
                        if FirstCategory then
                              self:SetCategory({
                                    Pointer = FirstCategory,
                                    Name = FirstCategory.Parent.Name .. "_" .. FirstCategory.Name,
                                    Parent = FirstCategory.Parent,
                              })
                        end
                  end)

                  --// Animate tab button
                  task.spawn(function()
                        for _, TabButton in TabsContainer:GetChildren() do
                              local Name = TabButton.Name
                              local TabCategoryContainer = TabCategories:FindFirstChild(Name)
                              if not TabCategoryContainer then
                                    continue
                              end

                              local Opened = Name == Tab.Name
                              if Opened then
                                    CatToSet = TabCategoryContainer
                              else
                                    task.spawn(function()
                                          task.wait(Library.CategoryPause)
                                          TabCategoryContainer.Visible = Opened
                                    end)
                              end

                              TabButton.TabImage:SetAttribute("Opened", Opened)

                              Globals:Tween(TabButton.TabImage, TweenInfo.new(0.25), {
                                    ImageColor3 = Opened and Color3.fromRGB(255, 255, 255) or Color3.fromRGB(126, 126, 126),
                              })
                        end
                  end)

                  --// Category slide in animation
                  task.spawn(function()
                        task.wait(Library.CategoryPause)
                        Globals:Tween(
                              self.Components.Categorys,
                              TweenInfo.new(Library.CategoryTransitionSpeed, Enum.EasingStyle.Quad),
                              {
                                    Position = UDim2.new(0, 15, 0.5, 0),
                              }
                        )
                        task.wait(0.1)
                        CatToSet.Visible = true
                  end)
            end

            function Window:SetCategory(Category)
                  local Pointer = Category.Pointer
                  local Components = Pointer.Components
                  local Tab = Category.Parent
                  local PageContainer = self.Components["Pages"]
                  local hiderIn

                  Components.CategoryButton:SetAttribute("Opened", true)
                  --// Transition
                  task.spawn(function()
                        hiderIn = Globals:Tween(
                              self.Components.PageHider,
                              TweenInfo.new(Library.PageTransitionSpeed, Enum.EasingStyle.Quad),
                              {
                                    BackgroundTransparency = 0,
                              }
                        )
                  end)

                  --// Reset
                  task.spawn(function()
                        for _, CategoryData in Tab.Categories do
                              local Comp = CategoryData.Components
                              Globals:Tween(Comp.CategoryButton, TweenInfo.new(0.25), {
                                    BackgroundColor3 = Color3.fromRGB(11, 11, 11),
                              })
                              Globals:Tween(Comp.CategoryTitle, TweenInfo.new(0.25), {
                                    TextColor3 = Color3.fromRGB(129, 129, 129),
                              })
                              Globals:Tween(Comp.CategoryStroke, TweenInfo.new(0.25), {
                                    Color = Color3.fromRGB(24, 24, 24),
                              })

                              Globals:Tween(Comp.TabDropshadow, TweenInfo.new(0.25), {
                                    ImageTransparency = 1,
                              })

                              Comp.CategoryButton:SetAttribute("Opened", false)
                              CategoryData.IsOpen = false
                        end
                  end)

                  --// animate current category
                  task.spawn(function()
                        Globals:Tween(Components.CategoryButton, TweenInfo.new(0.25), {
                              BackgroundColor3 = Library.Theme.DarkAccent,
                        })
                        Globals:Tween(Components.CategoryTitle, TweenInfo.new(0.25), {
                              TextColor3 = Color3.fromRGB(255, 255, 255),
                        })
                        Globals:Tween(Components.CategoryStroke, TweenInfo.new(0.25), {
                              Color = Library.Theme.Accent,
                        })
                        Globals:Tween(Components.TabDropshadow, TweenInfo.new(0.25), {
                              ImageTransparency = 0.5,
                        })
                        Components.CategoryButton:SetAttribute("Opened", true)
                  end)

                  Pointer.IsOpen = true

                  --// Fade out page hider
                  task.spawn(function()
                        if hiderIn then
                              hiderIn.Completed:Wait()
                        end
                        Globals:Tween(
                              self.Components.PageHider,
                              TweenInfo.new(Library.PageTransitionSpeed, Enum.EasingStyle.Quad),
                              {
                                    BackgroundTransparency = 1,
                              }
                        )

                        --// Set Active page visibility
                        for _, Page in PageContainer:GetChildren() do
                              if not Page:IsA("Frame") or table.find({ "PageFadeTop", "PageFadeBottom" }, Page.Name) then
                                    continue
                              end
                              Page.Visible = Page.Name == Category.Name
                        end
                  end)
            end

            function Window:Tab(TabData)
                  local Tab = {
                        Name = TabData.Name,
                        Image = TabData.Image,
                        Categories = {},
                        CategoryOrder = {},
                  }

                  Tab.__index = Tab
                  local Components = {}

                  do --// Components
                        Components["NewTabButtonHolder"] = Globals:Instance("TextButton", {
                              BackgroundColor3 = Color3.fromRGB(15, 15, 15),
                              BackgroundTransparency = 1,
                              BorderColor3 = Color3.fromRGB(0, 0, 0),
                              BorderSizePixel = 0,
                              Size = UDim2.new(0, 35, 0, 35),
                              Name = Tab.Name,
                              Parent = self.Components["TabsScrollingFrame"],
                              Text = "",
                              AutoButtonColor = false,
                        })

                        Components["TabImage"] = Globals:Instance("ImageLabel", {
                              Image = Tab.Image,
                              AnchorPoint = Vector2.new(0.5, 0.5),
                              BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                              ImageColor3 = Color3.fromRGB(126, 126, 126),
                              BackgroundTransparency = 1,
                              BorderColor3 = Color3.fromRGB(0, 0, 0),
                              BorderSizePixel = 0,
                              Position = UDim2.new(0.5, 0, 0.5, 0),
                              Size = UDim2.new(0, 25, 0, 25),
                              Name = "TabImage",
                              Parent = Components["NewTabButtonHolder"],
                        })

                        Components["CategoryHolder"] = Globals:Instance("Frame", {
                              BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                              BackgroundTransparency = 1,
                              BorderColor3 = Color3.fromRGB(0, 0, 0),
                              BorderSizePixel = 0,
                              Size = UDim2.new(1, 0, 1, 0),
                              Name = Tab.Name,
                              Parent = Window.Components["Categorys"],
                              Visible = false,
                        })

                        Components["CategoryListLayout"] = Globals:Instance("UIListLayout", {
                              Padding = UDim.new(0, 10),
                              FillDirection = Enum.FillDirection.Horizontal,
                              SortOrder = Enum.SortOrder.LayoutOrder,
                              Name = "CategoryHolderLayout",
                              Parent = Components["CategoryHolder"],
                        })
                  end

                  do --// Connections
                        local TabButton = Components["NewTabButtonHolder"]

                        Library:Connection("TabHandler_" .. Tab.Name, TabButton.MouseButton1Down, function()
                              Window:SetTab(Tab)
                        end)

                        Library:Connection("TabMouseEnter_" .. Tab.Name, Components.NewTabButtonHolder.MouseEnter, function()
                              Globals:Tween(
                                    Components["TabImage"],
                                    TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                    {
                                          ImageColor3 = Color3.fromRGB(255, 255, 255),
                                    }
                              )
                        end)

                        Library:Connection("TabMouseLeave_" .. Tab.Name, Components.NewTabButtonHolder.MouseLeave, function()
                              if Components["TabImage"]:GetAttribute("Opened") then
                                    return
                              end
                              Globals:Tween(
                                    Components["TabImage"],
                                    TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                    {
                                          ImageColor3 = Color3.fromRGB(126, 126, 126),
                                    }
                              )
                        end)
                  end

                  function Tab:Category(CategoryData)
                        local Category = {
                              Name = CategoryData.Name,
                              Sections = {},
                              Parent = Tab,
                              IsOpen = false,
                        }

                        Category.__index = Category

                        local Components = {}

                        do --// Components
                              Components["CategoryButton"] = Globals:Instance("TextButton", {
                                    Font = Enum.Font.SourceSansSemibold,
                                    RichText = true,
                                    Text = "",
                                    TextColor3 = Color3.fromRGB(143, 143, 143),
                                    TextSize = 14,
                                    TextTransparency = 1,
                                    AutoButtonColor = false,
                                    BackgroundColor3 = Color3.fromRGB(11, 11, 11), -- 0, 157, 209
                                    BorderColor3 = Color3.fromRGB(0, 0, 0),
                                    BorderSizePixel = 0,
                                    Size = UDim2.new(0, 82, 0, 20),
                                    Name = Category.Name,
                                    Parent = self.Components["CategoryHolder"],
                              })

                              Components["CategoryCorner"] = Globals:Instance("UICorner", {
                                    CornerRadius = UDim.new(0, 4),
                                    Name = "CategoryCorner",
                                    Parent = Components["CategoryButton"],
                              })

                              Components["CategoryStroke"] = Globals:Instance("UIStroke", {
                                    ApplyStrokeMode = Enum.ApplyStrokeMode.Border,
                                    Color = Color3.fromRGB(24, 24, 24), -- 0, 189, 255
                                    Name = "CategoryStroke",
                                    Parent = Components["CategoryButton"],
                              })

                              Components["CategoryTitle"] = Globals:Instance("TextLabel", {
                                    Font = Enum.Font.SourceSansSemibold,
                                    Text = Category.Name,
                                    TextColor3 = Color3.fromRGB(133, 133, 133), -- 255, 255, 255
                                    TextSize = 14,
                                    BackgroundColor3 = Color3.fromRGB(11, 11, 11),
                                    BackgroundTransparency = 1,
                                    BorderColor3 = Color3.fromRGB(0, 0, 0),
                                    BorderSizePixel = 0,
                                    Size = UDim2.new(1, 0, 1, 0),
                                    Name = "CategoryTitle",
                                    Parent = Components["CategoryButton"],
                              })

                              Components["TabDropshadowContainer"] = Globals:Instance("Frame", {
                                    BackgroundTransparency = 1,
                                    BorderSizePixel = 0,
                                    Size = UDim2.new(1, 0, 1, 0),
                                    ZIndex = 0,
                                    Name = "TabDropshadowContainer",
                                    Parent = Components["CategoryButton"],
                              })

                              Components["TabDropshadow"] = Globals:Instance("ImageLabel", {
                                    Image = Library.ShadowImage,
                                    ImageColor3 = Library.Theme.Accent,
                                    ImageTransparency = 1, -- 0.5,
                                    ScaleType = Enum.ScaleType.Slice,
                                    SliceCenter = Rect.new(49, 49, 450, 450),
                                    AnchorPoint = Vector2.new(0.5, 0.5),
                                    BackgroundTransparency = 1,
                                    BorderSizePixel = 0,
                                    Position = UDim2.new(0.5, 0, 0.5, 0),
                                    Size = UDim2.new(1, 30, 1, 30),
                                    ZIndex = 0,
                                    Name = "TabDropshadow",
                                    Parent = Components["TabDropshadowContainer"],
                              })

                              Components["Page"] = Globals:Instance("Frame", {
                                    BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                                    BackgroundTransparency = 1,
                                    BorderColor3 = Color3.fromRGB(0, 0, 0),
                                    BorderSizePixel = 0,
                                    Size = UDim2.new(1, 0, 1, 0),
                                    Name = Tab.Name .. "_" .. Category.Name,
                                    Visible = false,
                                    Parent = Window.Components["Pages"],
                              })

                              Components["Left"] = Globals:Instance("ScrollingFrame", {
                                    AutomaticCanvasSize = Enum.AutomaticSize.Y,
                                    CanvasSize = UDim2.new(0, 0, 1, 24),
                                    ScrollBarImageColor3 = Color3.fromRGB(0, 0, 0),
                                    ScrollBarImageTransparency = 1,
                                    ScrollBarThickness = 0,
                                    Active = true,
                                    BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                                    BackgroundTransparency = 1,
                                    BorderColor3 = Color3.fromRGB(0, 0, 0),
                                    BorderSizePixel = 0,
                                    Size = UDim2.new(0.5, -5, 1, 0),
                                    Name = "Left",
                                    Parent = Components["Page"],
                              })

                              Components["LeftListLayout"] = Globals:Instance("UIListLayout", {
                                    Parent = Components.Left,
                                    Padding = UDim.new(0, 15),
                              })

                              Components["LeftPadding"] = Globals:Instance("UIPadding", {
                                    PaddingLeft = UDim.new(0, 2),
                                    PaddingTop = UDim.new(0, 4),
                                    PaddingBottom = UDim.new(0, 5),
                                    Name = "LeftPadding",
                                    Parent = Components["Left"],
                              })

                              Components["Right"] = Globals:Instance("ScrollingFrame", {
                                    AutomaticCanvasSize = Enum.AutomaticSize.Y,
                                    CanvasSize = UDim2.new(0, 0, 1, 0),
                                    ScrollBarImageColor3 = Color3.fromRGB(0, 0, 0),
                                    ScrollBarImageTransparency = 1,
                                    ScrollBarThickness = 0,
                                    Active = true,
                                    AnchorPoint = Vector2.new(0.5, 0),
                                    BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                                    BackgroundTransparency = 1,
                                    BorderColor3 = Color3.fromRGB(0, 0, 0),
                                    BorderSizePixel = 0,
                                    Position = UDim2.new(0.5, 147, 0, 0),
                                    Size = UDim2.new(0.5, -5, 1, 0),
                                    Name = "Right",
                                    Parent = Components["Page"],
                              })

                              Components["RightPadding"] = Globals:Instance("UIPadding", {
                                    PaddingLeft = UDim.new(0, 2),
                                    PaddingTop = UDim.new(0, 4),
                                    PaddingBottom = UDim.new(0, 5),
                                    Name = "RightPadding",
                                    Parent = Components["Right"],
                              })

                              Components["RightListLayout"] = Globals:Instance("UIListLayout", {
                                    Parent = Components.Right,
                                    Padding = UDim.new(0, 15),
                              })
                        end

                        function Category:Section(SectionData)
                              local Section = {
                                    Name = SectionData.Name,
                                    Side = SectionData.Side or "Left",
                                    Elements = {},
                                    ZIndex = 9000,
                              }

                              Section.__index = Section

                              local Components = {}

                              do --// Components
                                    Components["Section"] = Globals:Instance("Frame", {
                                          AutomaticSize = Enum.AutomaticSize.Y,
                                          BackgroundColor3 = Color3.fromRGB(14, 14, 14),
                                          BorderColor3 = Color3.fromRGB(0, 0, 0),
                                          BorderSizePixel = 0,
                                          Size = UDim2.new(1, -4, 0, 30),
                                          Name = "Section",
                                          Parent = self.Components[Section.Side],
                                    })

                                    Components["SectionStroke"] = Globals:Instance("UIStroke", {
                                          Color = Color3.fromRGB(24, 24, 24),
                                          Name = "SectionStroke",
                                          Parent = Components["Section"],
                                    })

                                    Components["SectionCorner"] = Globals:Instance("UICorner", {
                                          CornerRadius = UDim.new(0, 3),
                                          Name = "SectionCorner",
                                          Parent = Components["Section"],
                                    })

                                    Components["SectionTitleLine"] = Globals:Instance("Frame", {
                                          BackgroundColor3 = Color3.fromRGB(24, 24, 24),
                                          BorderColor3 = Color3.fromRGB(0, 0, 0),
                                          BorderSizePixel = 0,
                                          Position = UDim2.new(0, 0, 0, 24),
                                          Size = UDim2.new(1, 0, 0, 1),
                                          Name = "SectionTitleLine",
                                          Parent = Components["Section"],
                                    })

                                    Components["SectionTitle"] = Globals:Instance("TextLabel", {
                                          Font = Enum.Font.SourceSansSemibold,
                                          Text = Section.Name,
                                          TextColor3 = Color3.fromRGB(255, 255, 255),
                                          TextSize = 14,
                                          TextXAlignment = Enum.TextXAlignment.Left,
                                          BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                                          BackgroundTransparency = 1,
                                          BorderColor3 = Color3.fromRGB(0, 0, 0),
                                          BorderSizePixel = 0,
                                          Position = UDim2.new(0, 14, 0, 2),
                                          Size = UDim2.new(1, -14, 0, 20),
                                          Name = "SectionTitle",
                                          Parent = Components["Section"],
                                    })

                                    Components["SectionElements"] = Globals:Instance("Frame", {
                                          AutomaticSize = Enum.AutomaticSize.Y,
                                          BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                                          BackgroundTransparency = 1,
                                          BorderColor3 = Color3.fromRGB(0, 0, 0),
                                          BorderSizePixel = 0,
                                          Position = UDim2.new(0, 14, 0, 30),
                                          Size = UDim2.new(0, 249, 0, -30),
                                          Name = "SectionElements",
                                          Parent = Components["Section"],
                                    })

                                    Components["SectionElementsListLayout"] = Globals:Instance("UIListLayout", {
                                          Padding = UDim.new(0, 3),
                                          SortOrder = Enum.SortOrder.LayoutOrder,
                                          Name = "SectionElementsListLayout",
                                          Parent = Components["SectionElements"],
                                    })
                              end

                              function Section:SetVisibility(visible)
                                    self.Visible = visible
                              end

                              function Section:Seperator()
                                    local Components = {}
                                    Components["SectionSeperatorHolder"] = Globals:Instance("Frame", {
                                          BackgroundColor3 = Color3.fromRGB(24, 24, 24),
                                          BackgroundTransparency = 1,
                                          BorderColor3 = Color3.fromRGB(0, 0, 0),
                                          BorderSizePixel = 0,
                                          Size = UDim2.new(1, 0, 0, 6),
                                          Name = "SectionSeperatorHolder",
                                          Parent = self.Components["SectionElements"],
                                    })

                                    Components["SectionSeperatorFrame"] = Globals:Instance("Frame", {
                                          BackgroundColor3 = Color3.fromRGB(24, 24, 24),
                                          BorderColor3 = Color3.fromRGB(0, 0, 0),
                                          BorderSizePixel = 0,
                                          Size = UDim2.new(1, 0, 0, 1),
                                          Name = "SectionSeperatorFrame",
                                          Parent = Components["SectionSeperatorHolder"],
                                    })

                                    function Components:SetVisibility(visible)
                                          Components.SectionSeperatorHolder.Visible = visible
                                    end

                                    return Components
                              end

                              function Section:Toggle(ToggleData)
                                    local Toggle = {
                                          Name = ToggleData.Name,
                                          Flag = ToggleData.Flag,
                                          Value = false,
                                          Default = ToggleData.Default or false,
                                          Callback = ToggleData.Callback or function() end,
                                          Tooltip = ToggleData.Tooltip or nil,
                                          Risky = ToggleData.Risky,
                                          Class = "Toggle"
                                    };

                                    Toggle.__index = Toggle

                                    local Components = {}

                                    do --// Components
                                          Components["ToggleHolder"] = Globals:Instance("TextButton", {
                                                BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                                                BackgroundTransparency = 1,
                                                BorderColor3 = Color3.fromRGB(0, 0, 0),
                                                BorderSizePixel = 0,
                                                Size = Toggle.Tooltip and UDim2.new(1, 0, 0, 38) or UDim2.new(1, 0, 0, 20),
                                                Name = "ToggleHolder",
                                                Parent = self.Components["SectionElements"],
                                                Text = "",
                                                AutoButtonColor = false,
                                          })

                                          Components["ToggleTitle"] = Globals:Instance("TextLabel", {
                                                Font = Enum.Font.SourceSansSemibold,
                                                Text = Toggle.Name,
                                                TextColor3 = not Toggle.Risky and Color3.fromRGB(129, 129, 129)
                                                      or Color3.fromRGB(150, 14, 23),
                                                TextSize = 14,
                                                TextXAlignment = Enum.TextXAlignment.Left,
                                                BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                                                BackgroundTransparency = 1,
                                                BorderColor3 = Color3.fromRGB(0, 0, 0),
                                                BorderSizePixel = 0,
                                                Size = UDim2.new(1, 0, 0, 15),
                                                Name = "ToggleTitle",
                                                Parent = Components["ToggleHolder"],
                                          })

                                          Components["ToggleButton"] = Globals:Instance("TextLabel", {
                                                Font = Enum.Font.SourceSans,
                                                Text = "",
                                                TextColor3 = Color3.fromRGB(0, 0, 0),
                                                TextSize = 14,
                                                BackgroundColor3 = Color3.fromRGB(11, 11, 11),
                                                BorderColor3 = Color3.fromRGB(0, 0, 0),
                                                BorderSizePixel = 0,
                                                Position = UDim2.new(1, -15, 0, 0),
                                                Size = UDim2.new(0, 15, 0, 15),
                                                Name = "ToggleButton",
                                                Parent = Components["ToggleHolder"],
                                          })

                                          Components["ToggleButtonCorner"] = Globals:Instance("UICorner", {
                                                CornerRadius = UDim.new(0, 4),
                                                Name = "ToggleButtonCorner",
                                                Parent = Components["ToggleButton"],
                                          })

                                          Components["ToggleStroke"] = Globals:Instance("UIStroke", {
                                                ApplyStrokeMode = Enum.ApplyStrokeMode.Border,
                                                Color = Color3.fromRGB(24, 24, 24),
                                                Name = "ToggleStroke",
                                                Parent = Components["ToggleButton"],
                                          })

                                          Components["ToggleDropshadowContainer"] = Globals:Instance("Frame", {
                                                BackgroundTransparency = 1,
                                                BorderSizePixel = 0,
                                                Size = UDim2.new(1, 0, 1, 0),
                                                ZIndex = 0,
                                                Name = "ToggleDropshadowContainer",
                                                Parent = Components["ToggleButton"],
                                          })

                                          Components["ToggleDropshadow"] = Globals:Instance("ImageLabel", {
                                                Image = Library.ShadowImage,
                                                ImageColor3 = Library.Theme.Accent,
                                                ImageTransparency = 0.5,
                                                ScaleType = Enum.ScaleType.Slice,
                                                SliceCenter = Rect.new(49, 49, 450, 450),
                                                AnchorPoint = Vector2.new(0.5, 0.5),
                                                BackgroundTransparency = 1,
                                                BorderSizePixel = 0,
                                                Position = UDim2.new(0.5, 0, 0.5, 0),
                                                Size = UDim2.new(1, 20, 1, 20),
                                                ZIndex = 0,
                                                Name = "ToggleDropshadow",
                                                Parent = Components["ToggleDropshadowContainer"],
                                          })

                                          if Toggle.Tooltip then
                                                Components["Tooltip"] = Globals:Instance("TextLabel", {
                                                      Font = Enum.Font.SourceSansSemibold,
                                                      Text = Toggle.Tooltip,
                                                      TextColor3 = Color3.fromRGB(88, 88, 88),
                                                      TextSize = 14,
                                                      TextXAlignment = Enum.TextXAlignment.Left,
                                                      BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                                                      BackgroundTransparency = 1,
                                                      BorderColor3 = Color3.fromRGB(0, 0, 0),
                                                      BorderSizePixel = 0,
                                                      Position = UDim2.new(0, 3, 0, 18),
                                                      Size = UDim2.new(1, 0, 0, 15),
                                                      Name = "Tooltip",
                                                      Parent = Components["ToggleHolder"],
                                                })
                                          end
                                    end

                                    local Val = false
                                    Toggle.Components = Components

                                    function Toggle:Set(Value)
                                          self.Value = Value
                                          Val = Value
                                          if self.Value == true then
                                                Globals:Tween(
                                                      Components["ToggleDropshadow"],
                                                      TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                                      {
                                                            ImageTransparency = 0.5,
                                                      }
                                                )

                                                Globals:Tween(
                                                      Components["ToggleButton"],
                                                      TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                                      {
                                                            BackgroundColor3 = Library.Theme.DarkAccent,
                                                      }
                                                )

                                                Globals:Tween(
                                                      Components["ToggleStroke"],
                                                      TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                                      {
                                                            Color = Library.Theme.Accent,
                                                      }
                                                )

                                                Globals:Tween(
                                                      Components["ToggleTitle"],
                                                      TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                                      {
                                                            TextColor3 = self.Risky and Color3.fromRGB(255, 0, 0)
                                                                  or Color3.fromRGB(255, 255, 255),
                                                      }
                                                )
                                          else
                                                Globals:Tween(
                                                      Components["ToggleDropshadow"],
                                                      TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                                      {
                                                            ImageTransparency = 1,
                                                      }
                                                )

                                                Globals:Tween(
                                                      Components["ToggleButton"],
                                                      TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                                      {
                                                            BackgroundColor3 = Color3.fromRGB(11, 11, 11),
                                                      }
                                                )

                                                Globals:Tween(
                                                      Components["ToggleStroke"],
                                                      TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                                      {
                                                            Color = Color3.fromRGB(24, 24, 24),
                                                      }
                                                )

                                                Globals:Tween(
                                                      Components["ToggleTitle"],
                                                      TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                                      {
                                                            TextColor3 = self.Risky and Color3.fromRGB(150, 14, 23)
                                                                  or Color3.fromRGB(129, 129, 129),
                                                      }
                                                )
                                          end

                                          Library:DoCallback(self.Callback)
                                    end

                                    function Toggle:SetVisibility(visible)
                                          self.Components.ToggleHolder.Visible = visible
                                    end

                                    Library:Connection(
                                          "ToggleHandler" .. Toggle.Flag,
                                          Components.ToggleHolder.MouseButton1Down,
                                          function()
                                                Toggle:Set(not Val)
                                          end
                                    )

                                    Library:Connection(
                                          "ToggleMouseEnter" .. Toggle.Name,
                                          Components.ToggleHolder.MouseEnter,
                                          function()
                                                Globals:Tween(
                                                      Components["ToggleStroke"],
                                                      TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                                      {
                                                            Color = Library.Theme.Accent,
                                                      }
                                                )
                                          end
                                    )

                                    Library:Connection(
                                          "ToggleMouseLeave" .. Category.Name,
                                          Components.ToggleHolder.MouseLeave,
                                          function()
                                                if Toggle.Value then
                                                      return
                                                end
                                                Globals:Tween(
                                                      Components["ToggleStroke"],
                                                      TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                                      {
                                                            Color = Color3.fromRGB(24, 24, 24),
                                                      }
                                                )
                                          end
                                    )

                                    Library.Flags[Toggle.Flag] = Toggle
                                    Section.Elements[Toggle.Flag] = Toggle

                                    Toggle:Set(Toggle.Default)
                                    return Toggle
                              end

                              function Section:Slider(SliderData)
                                    local Slider = {
                                          Min = SliderData.Min or 0,
                                          Max = SliderData.Max or 100,
                                          Default = SliderData.Default or SliderData.Max,
                                          Increment = SliderData.Increment or 1,
                                          Name = SliderData.Name,
                                          Flag = SliderData.Flag,
                                          Suffix = SliderData.Suffix or "",
                                          Callback = SliderData.Callback or function() end,
                                          Class = "Slider"
                                    };

                                    Slider.__index = Slider

                                    local Components = {}

                                    do --// Components
                                          Components["Slider"] = Globals:Instance("Frame", {
                                                BackgroundColor3 = Color3.fromRGB(255, 0, 4),
                                                BackgroundTransparency = 1,
                                                BorderColor3 = Color3.fromRGB(0, 0, 0),
                                                BorderSizePixel = 0,
                                                Size = UDim2.new(1, 0, 0, 44),
                                                Name = "Slider",
                                                Parent = self.Components["SectionElements"],
                                          })

                                          Components["SliderTitle"] = Globals:Instance("TextLabel", {
                                                Font = Enum.Font.SourceSansSemibold,
                                                Text = Slider.Name,
                                                TextColor3 = Color3.fromRGB(129, 129, 129),
                                                TextSize = 14,
                                                TextXAlignment = Enum.TextXAlignment.Left,
                                                BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                                                BackgroundTransparency = 1,
                                                BorderColor3 = Color3.fromRGB(0, 0, 0),
                                                BorderSizePixel = 0,
                                                Size = UDim2.new(1, 0, 0, 15),
                                                Name = "SliderTitle",
                                                Parent = Components["Slider"],
                                          })

                                          Components["SliderVisualizer"] = Globals:Instance("Frame", {
                                                BackgroundColor3 = Color3.fromRGB(11, 11, 11),
                                                BorderColor3 = Color3.fromRGB(0, 0, 0),
                                                BorderSizePixel = 0,
                                                Position = UDim2.new(0, 0, 1, -15),
                                                Size = UDim2.new(1, 0, 0, 2),
                                                Name = "SliderVisualizer",
                                                Parent = Components["Slider"],
                                          })

                                          Components["SliderVisualizerFill"] = Globals:Instance("Frame", {
                                                BackgroundColor3 = Library.Theme.DarkAccent,
                                                BorderColor3 = Color3.fromRGB(0, 0, 0),
                                                BorderSizePixel = 0,
                                                Size = UDim2.new(0, 0, 1, 0),
                                                Name = "SliderVisualizerFill",
                                                Parent = Components["SliderVisualizer"],
                                          })

                                          Components["SliderCircle"] = Globals:Instance("Frame", {
                                                AnchorPoint = Vector2.new(0, 0.5),
                                                BackgroundColor3 = Library.Theme.DarkAccent,
                                                BorderColor3 = Color3.fromRGB(0, 0, 0),
                                                BorderSizePixel = 0,
                                                Position = UDim2.new(1, -10, 0.5, 0),
                                                Size = UDim2.new(0, 10, 0, 10),
                                                Name = "SliderCircle",
                                                Parent = Components["SliderVisualizerFill"],
                                          })

                                          Components["SliderCircleCorner"] = Globals:Instance("UICorner", {
                                                Name = "SliderCircleCorner",
                                                Parent = Components["SliderCircle"],
                                          })

                                          Components["SliderShadowContainer"] = Globals:Instance("Frame", {
                                                BackgroundTransparency = 1,
                                                BorderSizePixel = 0,
                                                Size = UDim2.new(1, 0, 1, 0),
                                                ZIndex = 0,
                                                Name = "SliderShadowContainer",
                                                Parent = Components["SliderVisualizerFill"],
                                          })

                                          Components["SliderShadow"] = Globals:Instance("ImageLabel", {
                                                Image = Library.ShadowImage,
                                                ImageColor3 = Library.Theme.Accent,
                                                ImageTransparency = 0.72,
                                                ScaleType = Enum.ScaleType.Slice,
                                                SliceCenter = Rect.new(49, 49, 450, 450),
                                                AnchorPoint = Vector2.new(0.5, 0.5),
                                                BackgroundTransparency = 1,
                                                BorderSizePixel = 0,
                                                Position = UDim2.new(0.5, -1, 0.5, 0),
                                                Size = UDim2.new(1, 7, 1, 10),
                                                ZIndex = 0,
                                                Name = "SliderShadow",
                                                Parent = Components["SliderShadowContainer"],
                                          })

                                          Components["SliderValue"] = Globals:Instance("TextLabel", {
                                                Font = Enum.Font.SourceSansSemibold,
                                                Text = tostring(Slider.Default) .. Slider.Suffix,
                                                TextColor3 = Color3.fromRGB(129, 129, 129),
                                                TextSize = 14,
                                                TextXAlignment = Enum.TextXAlignment.Right,
                                                BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                                                BackgroundTransparency = 1,
                                                BorderColor3 = Color3.fromRGB(0, 0, 0),
                                                BorderSizePixel = 0,
                                                Size = UDim2.new(1, 0, 0, 15),
                                                Name = "SliderValue",
                                                Parent = Components["Slider"],
                                          })
                                    end

                                    function Slider:Set(Value)
                                          Value = Math.RoundToIncrement(math.clamp(Value, self.Min, self.Max), self.Increment)
                                          self.Value = Value

                                          local percent = (Value - self.Min) / (self.Max - self.Min)

                                          Globals:Tween(
                                                Components["SliderVisualizerFill"],
                                                TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                                {
                                                      Size = UDim2.new(percent, 0, 1, 0),
                                                }
                                          )

                                          Globals:Tween(
                                                Components["SliderCircle"],
                                                TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                                {
                                                      Position = UDim2.new(1, -10, 0.5, 0),
                                                }
                                          )

                                          Components["SliderValue"].Text = Library:FormatValue(Slider.Increment, Value)
                                                .. Slider.Suffix

                                          Library:DoCallback(self.Callback, Value)
                                    end

                                    function Slider:SetVisibility(visible)
                                          self.Slider.Visible = visible
                                    end

                                    Slider.Components = Components

                                    do --// Slider Input
                                          local Dragging = false

                                          local function UpdateFromInput(XPosition)
                                                local SliderVisualizer = Components["SliderVisualizer"]
                                                local SliderVisualizerFill = Components["SliderVisualizerFill"]
                                                local Circle = Components["SliderCircle"]
                                                local ValueLabel = Components["SliderValue"]

                                                local RelativeX = math.clamp(
                                                      (XPosition - SliderVisualizer.AbsolutePosition.X) / SliderVisualizer.AbsoluteSize.X,
                                                      0,
                                                      1
                                                )
                                                local RawValue = (Slider.Max - Slider.Min) * RelativeX + Slider.Min

                                                Slider:Set(RawValue)
                                          end

                                          UserInputService.InputEnded:Connect(function(input)
                                                if input.UserInputType == Enum.UserInputType.MouseButton1 then
                                                      Dragging = false
                                                      Window.InDrag = false
                                                end
                                          end)

                                          UserInputService.InputChanged:Connect(function(input)
                                                if Dragging and input.UserInputType == Enum.UserInputType.MouseMovement then
                                                      UpdateFromInput(input.Position.X)
                                                end
                                          end)

                                          Library:Connection("Slider" .. Slider.Flag, Components.Slider.InputBegan, function(Input)
                                                if Input.UserInputType == Enum.UserInputType.MouseButton1 then
                                                      Dragging = true
                                                      Window.InDrag = true
                                                      UpdateFromInput(Input.Position.X)
                                                end
                                          end)
                                    end

                                    Slider:Set(Slider.Default)

                                    Library.Flags[Slider.Flag] = Slider
                                    Section.Elements[Slider.Flag] = Slider
                                    return Slider
                              end

                              function Section:Button(ButtonData)
                                    local Button = {
                                          Name = ButtonData.Name,
                                          Flag = ButtonData.Flag,
                                          Class = "Button",
                                          Callback = ButtonData.Callback or function() end
                                    }

                                    local Components = {}

                                    do --// Components 
                                          Components["ButtonHolder"] = Globals:Instance("Frame", {
                                                BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                                                BackgroundTransparency = 1,
                                                BorderColor3 = Color3.fromRGB(0, 0, 0),
                                                BorderSizePixel = 0,
                                                Size = UDim2.new(1, 0, 0, 24),
                                                Name = "ButtonHolder",
                                                Parent = self.Components["SectionElements"]
                                          })

                                          Components["Button"] = Globals:Instance("TextButton", {
                                                Font = Enum.Font.SourceSansSemibold,
                                                TextColor3 = Color3.fromRGB(129, 129, 129),
                                                TextSize = 14,
                                                AutoButtonColor = false,
                                                BackgroundColor3 = Color3.fromRGB(11, 11, 11),
                                                BorderColor3 = Color3.fromRGB(0, 0, 0),
                                                BorderSizePixel = 0,
                                                Position = UDim2.new(0, 0, 0, 2),
                                                Size = UDim2.new(1, 0, 0, 18),
                                                Name = "Button",
                                                Parent = Components["ButtonHolder"],
                                                Text = Button.Name
                                          })

                                          Components["ButtonCorner"] = Globals:Instance("UICorner", {
                                                CornerRadius = UDim.new(0, 4),
                                                Name = "ButtonCorner",
                                                Parent = Components["Button"]
                                          })

                                          Components["ButtonStroke"] = Globals:Instance("UIStroke", {
                                                ApplyStrokeMode = Enum.ApplyStrokeMode.Border,
                                                Color = Color3.fromRGB(24, 24, 24),
                                                Name = "ButtonStroke",
                                                Parent = Components["Button"]
                                          })
                                    end

                                    Library:Connection("MouseEnter" .. Button.Flag, Components.Button.MouseEnter, function()
                                          Globals:Tween(
                                                Components["ButtonStroke"],
                                                TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                                {
                                                      Color = Library.Theme.Accent,
                                                }
                                          )
                                    end)

                                    Library:Connection("MouseLeave" .. Button.Flag, Components.Button.MouseLeave, function()
                                          Globals:Tween(
                                                Components["ButtonStroke"],
                                                TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                                {
                                                      Color = Color3.fromRGB(24, 24, 24),
                                                }
                                          )
                                    end)

                                    Library:Connection("ButtonHandler" .. Button.Flag, Components.Button.MouseButton1Down, function()
                                          Library:DoCallback(Button.Callback)
                                          task.spawn(function()
                                                Globals:Tween(
                                                      Components["Button"],
                                                      TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                                      {
                                                            BackgroundColor3 = Library.Theme.Accent,
                                                      }
                                                )
                                                task.wait(0.2)
                                                Globals:Tween(
                                                      Components["Button"],
                                                      TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                                      {
                                                            BackgroundColor3 = Color3.fromRGB(11, 11, 11),
                                                      }
                                                )
                                          end);
                                    end)

                                    function Button:AddButton(NewData)
                                          if self.SecondButton then return end

                                          local newFlag = NewData.Flag or (self.Flag .. "_2")
                                          local newName = NewData.Name or "Button"
                                          local newCallback = NewData.Callback or function() end

                                          Components.Button.Size = UDim2.new(0.5, -1, 0, 18)
                                          Components.Button.Position = UDim2.new(0, 0, 0, 2)

                                          local Second = Globals:Instance("TextButton", {
                                                Font = Enum.Font.SourceSansSemibold,
                                                TextColor3 = Color3.fromRGB(129, 129, 129),
                                                TextSize = 14,
                                                AutoButtonColor = false,
                                                BackgroundColor3 = Color3.fromRGB(11, 11, 11),
                                                BorderColor3 = Color3.fromRGB(0, 0, 0),
                                                BorderSizePixel = 0,
                                                Position = UDim2.new(0.5, 1, 0, 2),
                                                Size = UDim2.new(0.5, -1, 0, 18),
                                                Name = "Button2",
                                                Parent = Components["ButtonHolder"],
                                                Text = newName
                                          })

                                          Globals:Instance("UICorner", {
                                                CornerRadius = UDim.new(0, 4),
                                                Parent = Second
                                          })

                                          local Stroke = Globals:Instance("UIStroke", {
                                                ApplyStrokeMode = Enum.ApplyStrokeMode.Border,
                                                Color = Color3.fromRGB(24, 24, 24),
                                                Parent = Second
                                          })

                                          Library:Connection("ButtonHandler" .. newFlag, Second.MouseButton1Down, function()
                                                Library:DoCallback(newCallback)
                                                task.spawn(function()
                                                      Globals:Tween(
                                                            Second,
                                                            TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                                            {
                                                                  BackgroundColor3 = Library.Theme.Accent,
                                                            }
                                                      )
                                                      task.wait(0.2)
                                                      Globals:Tween(
                                                            Second,
                                                            TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                                            {
                                                                  BackgroundColor3 = Color3.fromRGB(11, 11, 11),
                                                            }
                                                      )
                                                end);

                                          end)

                                          Library:Connection("MouseEnter" .. newFlag, Second.MouseEnter, function()
                                                Globals:Tween(
                                                      Stroke,
                                                      TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                                      {
                                                            Color = Library.Theme.Accent,
                                                      }
                                                )
                                          end)

                                          Library:Connection("MouseLeave" .. newFlag, Second.MouseLeave, function()
                                                Globals:Tween(
                                                      Stroke,
                                                      TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                                      {
                                                            Color = Color3.fromRGB(24, 24, 24),
                                                      }
                                                )
                                          end)

                                          self.SecondButton = {
                                                Name = newName,
                                                Flag = newFlag,
                                                Callback = newCallback,
                                                Instance = Second
                                          }

                                          return self.SecondButton
                                    end

                                    Button.Components = Components
                                    Button.__index = Button
                                    Section.Elements[Button.Flag] = Button
                                    return Button
                              end

                              function Section:Dropdown(DropdownData)
                                    local Dropdown = {
                                          Name = DropdownData.Name,
                                          Flag = DropdownData.Flag,
                                          Multi = DropdownData.Multi or false,
                                          Value = not DropdownData.Multi and "" or {},
                                          Default = DropdownData.Default,
                                          Callback = DropdownData.Callback or function() end,
                                          Class = "Dropdown"
                                    };

                                    self.ZIndex -= 1
                                    Dropdown.__index = Dropdown
                                    local vis = false
                                    local Components = {}

                                    do --// Components
                                          Components["Dropdown"] = Globals:Instance("Frame", {
                                                BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                                                BackgroundTransparency = 1,
                                                BorderColor3 = Color3.fromRGB(0, 0, 0),
                                                BorderSizePixel = 0,
                                                Size = UDim2.new(1, 0, 0, 44),
                                                ZIndex = 2,
                                                Name = "Dropdown",
                                                Parent = self.Components["SectionElements"],
                                                ZIndex = self.ZIndex,
                                          })

                                          Components["DropdownTitle"] = Globals:Instance("TextLabel", {
                                                Font = Enum.Font.SourceSansSemibold,
                                                Text = Dropdown.Name,
                                                TextColor3 = Color3.fromRGB(129, 129, 129),
                                                TextSize = 14,
                                                TextXAlignment = Enum.TextXAlignment.Left,
                                                BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                                                BackgroundTransparency = 1,
                                                BorderColor3 = Color3.fromRGB(0, 0, 0),
                                                BorderSizePixel = 0,
                                                Size = UDim2.new(1, 0, 0, 15),
                                                Name = "DropdownTitle",
                                                Parent = Components["Dropdown"],
                                          })

                                          Components["DropdownButton"] = Globals:Instance("TextButton", {
                                                Font = Enum.Font.SourceSansSemibold,
                                                Text = "   ",
                                                TextColor3 = Color3.fromRGB(129, 129, 129),
                                                TextSize = 14,
                                                TextXAlignment = Enum.TextXAlignment.Left,
                                                AutoButtonColor = false,
                                                BackgroundColor3 = Color3.fromRGB(11, 11, 11),
                                                BorderColor3 = Color3.fromRGB(0, 0, 0),
                                                BorderSizePixel = 0,
                                                Position = UDim2.new(0, 0, 0, 18),
                                                Size = UDim2.new(1, 0, 0, 22),
                                                Name = "DropdownButton",
                                                Parent = Components["Dropdown"],
                                                ClipsDescendants = false,
                                          })

                                          Components["DropdownButtonCorner"] = Globals:Instance("UICorner", {
                                                CornerRadius = UDim.new(0, 4),
                                                Name = "DropdownButtonCorner",
                                                Parent = Components["DropdownButton"],
                                          })

                                          Components["DropdownStroke"] = Globals:Instance("UIStroke", {
                                                ApplyStrokeMode = Enum.ApplyStrokeMode.Border,
                                                Color = Color3.fromRGB(24, 24, 24),
                                                Name = "DropdownStroke",
                                                Parent = Components["DropdownButton"],
                                          })

                                          Components["DropdownImage"] = Globals:Instance("ImageLabel", {
                                                Image = Library.DropdownImage,
                                                AnchorPoint = Vector2.new(0, 0.5),
                                                BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                                                BackgroundTransparency = 1,
                                                BorderColor3 = Color3.fromRGB(0, 0, 0),
                                                BorderSizePixel = 0,
                                                Position = UDim2.new(1, -15, 0.5, 0),
                                                Size = UDim2.new(0, 15, 0, 15),
                                                Name = "DropdownImage",
                                                Parent = Components["DropdownButton"],
                                                ZIndex = 3,
                                          })

                                          Components["DropdownItemsOutline"] = Globals:Instance("Frame", {
                                                BackgroundColor3 = Color3.fromRGB(11, 11, 11),
                                                BorderColor3 = Color3.fromRGB(0, 0, 0),
                                                BorderSizePixel = 0,
                                                Position = UDim2.new(0, 0, 0, 21),
                                                Size = UDim2.new(1, 0, 0, 0),
                                                Name = "DropdownItemsOutline",
                                                Visible = false,
                                                Parent = Components["DropdownButton"],
                                                ClipsDescendants = true,
                                                ZIndex = 2,
                                          })

                                          Components["DropdownItemsStroke"] = Globals:Instance("UIStroke", {
                                                ApplyStrokeMode = Enum.ApplyStrokeMode.Border,
                                                Color = Color3.fromRGB(24, 24, 24),
                                                Name = "DropdownItemsStroke",
                                                Parent = Components["DropdownItemsOutline"],
                                                Transparency = 1,
                                          })

                                          Components["DropdownItems"] = Globals:Instance("ScrollingFrame", {
                                                AutomaticCanvasSize = Enum.AutomaticSize.Y,
                                                CanvasSize = UDim2.new(0, 0, 1, 0),
                                                ScrollBarImageColor3 = Library.Theme.Accent,
                                                ScrollBarImageTransparency = 0.67,
                                                ScrollBarThickness = 3,
                                                Visible = true,
                                                BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                                                BackgroundTransparency = 1,
                                                BorderColor3 = Color3.fromRGB(0, 0, 0),
                                                BorderSizePixel = 0,
                                                Position = UDim2.new(0, 2, 0, 2),
                                                Size = UDim2.new(1, -4, 1, -4),
                                                Name = "DropdownItems",
                                                Parent = Components["DropdownItemsOutline"],
                                                ClipsDescendants = true,
                                          })

                                          Components["DropdownListLayout"] = Globals:Instance("UIListLayout", {
                                                Padding = UDim.new(0, 3),
                                                SortOrder = Enum.SortOrder.LayoutOrder,
                                                Name = "DropdownListLayout",
                                                Parent = Components["DropdownItems"],
                                          })

                                          Components["DropdownFadeBottom"] = Globals:Instance("Frame", {
                                                BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                                                BorderColor3 = Color3.fromRGB(0, 0, 0),
                                                BorderSizePixel = 0,
                                                Position = UDim2.new(0, 0, 1, -20),
                                                Size = UDim2.new(1, 0, 0, 20),
                                                Name = "DropdownFadeBottom",
                                                Parent = Components["DropdownItemsOutline"],
                                          })

                                          Components["DropdownFadeTopGradient"] = Globals:Instance("UIGradient", {
                                                Color = ColorSequence.new({
                                                      ColorSequenceKeypoint.new(0, Color3.fromRGB(11, 11, 11)),
                                                      ColorSequenceKeypoint.new(1, Color3.fromRGB(11, 11, 11)),
                                                }),
                                                Rotation = -90,
                                                Transparency = NumberSequence.new({
                                                      NumberSequenceKeypoint.new(0, 0.4),
                                                      NumberSequenceKeypoint.new(1, 1),
                                                }),
                                                Name = "DropdownFadeTopGradient",
                                                Parent = Components["DropdownFadeBottom"],
                                          })

                                          Components["DropdownFadeTop"] = Globals:Instance("Frame", {
                                                BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                                                BorderColor3 = Color3.fromRGB(0, 0, 0),
                                                BorderSizePixel = 0,
                                                Size = UDim2.new(1, 0, 0, 20),
                                                Name = "DropdownFadeTop",
                                                Parent = Components["DropdownItemsOutline"],
                                          })

                                          Components["DropdownFadeTopGradient1"] = Globals:Instance("UIGradient", {
                                                Color = ColorSequence.new({
                                                      ColorSequenceKeypoint.new(0, Color3.fromRGB(11, 11, 11)),
                                                      ColorSequenceKeypoint.new(1, Color3.fromRGB(11, 11, 11)),
                                                }),
                                                Rotation = 90,
                                                Transparency = NumberSequence.new({
                                                      NumberSequenceKeypoint.new(0, 0.4),
                                                      NumberSequenceKeypoint.new(1, 1),
                                                }),
                                                Name = "DropdownFadeTopGradient",
                                                Parent = Components["DropdownFadeTop"],
                                          })

                                          Components["DropdownText"] = Globals:Instance("TextLabel", {
                                                Parent = Components["DropdownButton"],
                                                BackgroundTransparency = 1,
                                                TextXAlignment = Enum.TextXAlignment.Left,
                                                TextColor3 = Color3.fromRGB(129, 129, 129),
                                                Size = UDim2.new(1, 0, 1, 0),
                                                ZIndex = 1,
                                                Font = Enum.Font.SourceSansSemibold,
                                                TextSize = 14,
                                                ClipsDescendants = true,
                                          })

                                          Components["DropdownHider"] = Instance.new("Frame")
                                          Components["DropdownHider"].BackgroundColor3 = Color3.fromRGB(255, 255, 255)
                                          Components["DropdownHider"].BorderColor3 = Color3.fromRGB(0, 0, 0)
                                          Components["DropdownHider"].BorderSizePixel = 0
                                          Components["DropdownHider"].Position = UDim2.new(1, -20, 0.5, 0)
                                          Components["DropdownHider"].Size = UDim2.new(0, 20, 1, -2)
                                          Components["DropdownHider"].AnchorPoint = Vector2.new(0, 0.5)
                                          Components["DropdownHider"].Parent = Components["DropdownButton"]

                                          Components["HiderGradient"] = Instance.new("UIGradient")
                                          Components["HiderGradient"].Color = ColorSequence.new({
                                                ColorSequenceKeypoint.new(
                                                      0,
                                                      Color3.fromRGB(11.000000294297934, 11.000000294297934, 11.000000294297934)
                                                ),
                                                ColorSequenceKeypoint.new(
                                                      1,
                                                      Color3.fromRGB(11.000000294297934, 11.000000294297934, 11.000000294297934)
                                                ),
                                          })
                                          Components["HiderGradient"].Rotation = -180
                                          Components["HiderGradient"].Transparency = NumberSequence.new({
                                                NumberSequenceKeypoint.new(0, 0),
                                                NumberSequenceKeypoint.new(0.7219451665878296, 0),
                                                NumberSequenceKeypoint.new(0.7842893004417419, 0),
                                                NumberSequenceKeypoint.new(0.8690773248672485, 0.44999998807907104),
                                                NumberSequenceKeypoint.new(0.9650872945785522, 0.7062499523162842),
                                                NumberSequenceKeypoint.new(1, 0.36250001192092896),
                                          })
                                          Components["HiderGradient"].Name = "PageFadeTopGradient"
                                          Components["HiderGradient"].Parent = Components["DropdownHider"]
                                    end

                                    Dropdown.Components = Components

                                    Dropdown.Options = {}

                                    function Dropdown:SetVisibility(visible)
                                          self.Components.Dropdown.Visible = visible
                                    end

                                    function Dropdown:AddOption(Name)
                                          local Option = {
                                                Name = Name,
                                                Value = false,
                                                Components = {},
                                          }

                                          local OptionComponents = {}

                                          OptionComponents["Option"] = Globals:Instance("TextButton", {
                                                Font = Enum.Font.SourceSans,
                                                Text = "",
                                                TextColor3 = Color3.fromRGB(0, 0, 0),
                                                TextSize = 14,
                                                BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                                                BackgroundTransparency = 1,
                                                BorderColor3 = Color3.fromRGB(0, 0, 0),
                                                BorderSizePixel = 0,
                                                Size = UDim2.new(1, 0, 0, 20),
                                                Name = "Option",
                                                Parent = Components["DropdownItems"],
                                          })

                                          OptionComponents["OptionOnTitle"] = Globals:Instance("TextLabel", {
                                                Font = Enum.Font.SourceSansSemibold,
                                                Text = Name,
                                                TextColor3 = Color3.fromRGB(129, 129, 129),
                                                TextSize = 14,
                                                TextXAlignment = Enum.TextXAlignment.Left,
                                                BackgroundColor3 = Color3.fromRGB(129, 129, 129),
                                                BackgroundTransparency = 1,
                                                BorderColor3 = Color3.fromRGB(0, 0, 0),
                                                BorderSizePixel = 0,
                                                Position = UDim2.new(0, 10, 0, 0),
                                                Size = UDim2.new(1, -10, 1, 0),
                                                Name = "OptionOnTitle",
                                                Parent = OptionComponents["Option"],
                                          })

                                          OptionComponents["OptionIndicator"] = Globals:Instance("Frame", {
                                                BackgroundColor3 = Library.Theme.Accent,
                                                BorderColor3 = Color3.fromRGB(0, 0, 0),
                                                BorderSizePixel = 0,
                                                Size = UDim2.new(0, 3, 1, 0),
                                                Name = "OptionIndicator",
                                                Visible = true,
                                                BackgroundTransparency = 1,
                                                Parent = OptionComponents["Option"],
                                          })

                                          Library:Connection(
                                                "OptionHandler" .. Option.Name .. "_" .. Dropdown.Flag,
                                                OptionComponents.Option.MouseButton1Down,
                                                function()
                                                      if Dropdown.Multi then
                                                            Option.Value = not Option.Value
                                                            Globals:Tween(
                                                                  OptionComponents["OptionIndicator"],
                                                                  TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                                                  {
                                                                        BackgroundTransparency = Option.Value and 0 or 1,
                                                                  }
                                                            )
                                                            Globals:Tween(
                                                                  OptionComponents["OptionOnTitle"],
                                                                  TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                                                  {
                                                                        TextColor3 = Option.Value and Color3.fromRGB(255, 255, 255)
                                                                              or Color3.fromRGB(129, 129, 129),
                                                                  }
                                                            )
                                                      else
                                                            for _, other in ipairs(Dropdown.Options) do
                                                                  other.Value = false

                                                                  Globals:Tween(
                                                                        other.Components["OptionIndicator"],
                                                                        TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                                                        {
                                                                              BackgroundTransparency = other.Value and 0 or 1,
                                                                        }
                                                                  )

                                                                  Globals:Tween(
                                                                        other.Components["OptionOnTitle"],
                                                                        TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                                                        {
                                                                              TextColor3 = other.Value and Color3.fromRGB(255, 255, 255)
                                                                                    or Color3.fromRGB(129, 129, 129),
                                                                        }
                                                                  )
                                                            end
                                                            Option.Value = true
                                                            Globals:Tween(
                                                                  OptionComponents["OptionIndicator"],
                                                                  TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                                                  {
                                                                        BackgroundTransparency = 0,
                                                                  }
                                                            )

                                                            Globals:Tween(
                                                                  OptionComponents["OptionOnTitle"],
                                                                  TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                                                  {
                                                                        TextColor3 = Option.Value and Color3.fromRGB(255, 255, 255)
                                                                              or Color3.fromRGB(129, 129, 129),
                                                                  }
                                                            )

                                                            Components["DropdownText"].Text = "   " .. Name
                                                            local SizeTween = Globals:Tween(
                                                                  Components["DropdownItemsOutline"],
                                                                  TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                                                  {
                                                                        Size = UDim2.new(1, 0, 0, 0),
                                                                  }
                                                            )
                                                            Globals:Tween(
                                                                  Components["DropdownItemsStroke"],
                                                                  TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                                                  {
                                                                        Transparency = 1,
                                                                  }
                                                            )
                                                            task.spawn(function()
                                                                  task.wait(Library.HighlightSpeed)
                                                                  Components.DropdownItemsOutline.Visible = false
                                                            end)
                                                      end

                                                      if Dropdown.Multi then
                                                            local selected = {}
                                                            for _, opt in ipairs(Dropdown.Options) do
                                                                  if opt.Value then
                                                                        table.insert(selected, opt.Name)
                                                                  end
                                                            end
                                                            Dropdown:Set(selected)
                                                      else
                                                            Dropdown:Set(Name)
                                                      end
                                                end
                                          )

                                          Option.Components = OptionComponents
                                          table.insert(Dropdown.Options, Option)
                                          return Option
                                    end

                                    for Index, Name in DropdownData.Options do
                                          Dropdown:AddOption(Name)
                                    end

                                    function Dropdown:Set(Value)
                                          self.Value = Value

                                          if Dropdown.Multi then
                                                local selectedNames = {}
                                                for _, opt in ipairs(self.Options) do
                                                      local selected = table.find(Value, opt.Name) ~= nil
                                                      opt.Value = selected

                                                      Globals:Tween(
                                                            opt.Components["OptionIndicator"],
                                                            TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                                            {
                                                                  BackgroundTransparency = selected and 0 or 1,
                                                            }
                                                      )

                                                      Globals:Tween(
                                                            opt.Components["OptionOnTitle"],
                                                            TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                                            {
                                                                  TextColor3 = selected and Color3.fromRGB(255, 255, 255)
                                                                        or Color3.fromRGB(129, 129, 129),
                                                            }
                                                      )

                                                      if selected then
                                                            table.insert(selectedNames, opt.Name)
                                                      end
                                                end

                                                if #selectedNames == 0 then
                                                      Components["DropdownText"].Text = "   None"
                                                else
                                                      Components["DropdownText"].Text = "   " .. table.concat(selectedNames, ", ")
                                                end
                                          else
                                                for _, opt in ipairs(self.Options) do
                                                      local selected = opt.Name == Value
                                                      opt.Value = selected

                                                      Globals:Tween(
                                                            opt.Components["OptionIndicator"],
                                                            TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                                            {
                                                                  BackgroundTransparency = selected and 0 or 1,
                                                            }
                                                      )

                                                      Globals:Tween(
                                                            opt.Components["OptionOnTitle"],
                                                            TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                                            {
                                                                  TextColor3 = selected and Color3.fromRGB(255, 255, 255)
                                                                        or Color3.fromRGB(129, 129, 129),
                                                            }
                                                      )
                                                end

                                                Globals:Tween(
                                                      Components["Dropdown"],
                                                      TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                                      {
                                                            Size = UDim2.new(1, 0, 0, 44),
                                                      }
                                                )

                                                Components["DropdownText"].Text = "   " .. tostring(Value)
                                          end

                                          Library:DoCallback(self.Callback, Value)
                                    end

                                    Library:Connection(
                                          "DropdownHandler_" .. Dropdown.Flag .. "Main",
                                          Components["DropdownButton"].MouseButton1Down,
                                          function()
                                                vis = not vis
                                                if vis then
                                                      local itemCount = #Dropdown.Options
                                                      local itemHeight = 24
                                                      local expandedItemHeight = math.min(itemCount, 3) * itemHeight
                                                      local fullHeight = 44 + expandedItemHeight

                                                      Components.DropdownItemsOutline.Visible = true

                                                      Globals:Tween(
                                                            Components["DropdownItemsOutline"],
                                                            TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                                            {
                                                                  Size = UDim2.new(1, 0, 0, expandedItemHeight),
                                                            }
                                                      )

                                                      Globals:Tween(
                                                            Components["Dropdown"],
                                                            TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                                            {
                                                                  Size = UDim2.new(1, 0, 0, fullHeight),
                                                            }
                                                      )

                                                      Globals:Tween(
                                                            Components["DropdownItemsStroke"],
                                                            TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                                            {
                                                                  Transparency = 0,
                                                            }
                                                      )
                                                else
                                                      Globals:Tween(
                                                            Components["DropdownItemsOutline"],
                                                            TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                                            {
                                                                  Size = UDim2.new(1, 0, 0, 0),
                                                            }
                                                      )

                                                      Globals:Tween(
                                                            Components["Dropdown"],
                                                            TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                                            {
                                                                  Size = UDim2.new(1, 0, 0, 44),
                                                            }
                                                      )

                                                      Globals:Tween(
                                                            Components["DropdownItemsStroke"],
                                                            TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                                            {
                                                                  Transparency = 1,
                                                            }
                                                      )

                                                      task.spawn(function()
                                                            task.wait(Library.HighlightSpeed)
                                                            Components.DropdownItemsOutline.Visible = false
                                                      end)
                                                end
                                          end
                                    )

                                    if not Dropdown.Default or (Dropdown.Multi and #Dropdown.Default == 0) then
                                          if Dropdown.Multi then
                                                Dropdown.Default = { DropdownData.Options[1] }
                                          else
                                                Dropdown.Default = DropdownData.Options[1]
                                          end
                                    end

                                    Dropdown:Set(Dropdown.Default)
                                    Library.Flags[Dropdown.Flag] = Dropdown
                                    Section.Elements[Dropdown.Flag] = Dropdown
                                    return Dropdown
                              end

                              function Section:Textbox(TextboxData)
                                    local TextBox = {
                                          Name = TextboxData.Name,
                                          Flag = TextboxData.Flag,
                                          Default = TextboxData.Default or "",
                                          Callback = TextboxData.Callback or function() end,
                                          Value = "",
                                          Class = "TextBox";
                                    }

                                    local Components = {}

                                    Components.Holder = Globals:Instance("Frame", {
                                          BackgroundTransparency = 1,
                                          Size = UDim2.new(1, 0, 0, 40),
                                          Parent = self.Components.SectionElements,
                                    })

                                    Components.Title = Globals:Instance("TextLabel", {
                                          Font = Enum.Font.SourceSansSemibold,
                                          Text = TextBox.Name,
                                          TextColor3 = Color3.fromRGB(129, 129, 129),
                                          TextSize = 14,
                                          BackgroundTransparency = 1,
                                          Size = UDim2.new(1, 0, 0, 15),
                                          TextXAlignment = Enum.TextXAlignment.Left,
                                          Parent = Components.Holder,
                                    })

                                    local BoxFrame = Globals:Instance("Frame", {
                                          BackgroundColor3 = Color3.fromRGB(11, 11, 11),
                                          Position = UDim2.new(0, 0, 0, 18),
                                          Size = UDim2.new(1, 0, 0, 18),
                                          ClipsDescendants = true,
                                          Parent = Components.Holder,
                                    })
                                    Globals:Instance("UICorner", { CornerRadius = UDim.new(0, 4), Parent = BoxFrame })
                                    local Stroke = Globals:Instance("UIStroke", {
                                          Color = Color3.fromRGB(24, 24, 24),
                                          ApplyStrokeMode = Enum.ApplyStrokeMode.Border,
                                          Parent = BoxFrame,
                                    })

                                    local Label = Globals:Instance("TextLabel", {
                                          Font = Enum.Font.SourceSansSemibold,
                                          Text = "",
                                          TextColor3 = Color3.fromRGB(230, 230, 230),
                                          TextSize = 14,
                                          TextXAlignment = Enum.TextXAlignment.Left,
                                          BackgroundTransparency = 1,
                                          Size = UDim2.new(1, -5, 1, 0),
                                          Position = UDim2.new(0, 5, 0, 0),
                                          Parent = BoxFrame,
                                    })

                                    local Mask = Globals:Instance("Frame", {
                                          BackgroundColor3 = Color3.fromRGB(11, 11, 11),
                                          Size = UDim2.new(1, -2, 1, -2),
                                          Position = UDim2.new(0, 1, 0, 1),
                                          Parent = BoxFrame,
                                    })

                                    Globals:Instance("UICorner", { CornerRadius = UDim.new(0, 4), Parent = Mask })

                                    local Cursor = Globals:Instance("Frame", {
                                          BackgroundColor3 = Color3.fromRGB(230, 230, 230),
                                          Size = UDim2.new(0, 1, 0.8, 0),
                                          Position = UDim2.new(0, 0, 0.1, 0),
                                          Parent = BoxFrame,
                                          ZIndex = Mask.ZIndex + 1,
                                          Visible = false,
                                    })
                                    Globals:Instance("UICorner", { CornerRadius = UDim.new(0, 1), Parent = Cursor })

                                    local InputBox = Globals:Instance("TextBox", {
                                          Font = Label.Font,
                                          TextSize = Label.TextSize,
                                          TextTransparency = 1,
                                          Text = "",
                                          BackgroundTransparency = 1,
                                          ClearTextOnFocus = false,
                                          Size = UDim2.new(1, -5, 1, 0),
                                          Position = UDim2.new(0, 5, 0, 0),
                                          Parent = BoxFrame,
                                    })

                                    local TweenService = TweenService

                                    local BlinkTweenInfo =
                                          TweenInfo.new(0.7, Enum.EasingStyle.Linear, Enum.EasingDirection.InOut, -1, true)
                                    local BlinkTween = TweenService:Create(Cursor, BlinkTweenInfo, { BackgroundTransparency = 1 })

                                    local function UpdateMaskAndCursor()
                                          local FullText = Label.Text
                                          local TextWidth = Label.TextBounds.X
                                          local BoxWidth = BoxFrame.AbsoluteSize.X

                                          local RevealX = math.clamp(TextWidth, 0, BoxWidth - 7)

                                          if FullText:sub(-1) == " " then
                                                RevealX = RevealX + 3
                                          end

                                          Mask:TweenPosition(
                                                UDim2.new(0, 1 + 5 + RevealX, 0, 1),
                                                Enum.EasingDirection.Out,
                                                Enum.EasingStyle.Sine,
                                                0.1,
                                                true
                                          )
                                          Cursor:TweenPosition(
                                                UDim2.new(0, 5 + RevealX, 0.1, 0),
                                                Enum.EasingDirection.Out,
                                                Enum.EasingStyle.Sine,
                                                0.1,
                                                true
                                          )
                                    end

                                    function TextBox:Set(Value)
                                          self.Value = Value
                                          Label.Text = Value
                                          InputBox.Text = Value

                                          task.defer(UpdateMaskAndCursor)

                                          Library:DoCallback(self.Callback, Value)
                                    end

                                    function TextBox:SetVisibility(Visible)
                                          Components.Holder.Visible = Visible
                                    end

                                    InputBox.Focused:Connect(function()
                                          TweenService:Create(Stroke, TweenInfo.new(0.2), { Color = Library.Theme.Accent }):Play()
                                          Cursor.Visible = true
                                          if BlinkTween.PlaybackState ~= Enum.PlaybackState.Playing then
                                                BlinkTween:Play()
                                          end
                                    end)

                                    InputBox.FocusLost:Connect(function()
                                          TweenService:Create(Stroke, TweenInfo.new(0.2), { Color = Color3.fromRGB(24, 24, 24) })
                                                :Play()
                                          Cursor.Visible = false
                                          BlinkTween:Pause()
                                    end)

                                    InputBox:GetPropertyChangedSignal("Text"):Connect(function()
                                          local FullText = InputBox.Text
                                          TextBox.Value = FullText
                                          Label.Text = FullText
                                          task.defer(UpdateMaskAndCursor)
                                          Library:DoCallback(TextboxData.Callback, FullText)
                                    end)

                                    TextBox:Set(TextBox.Default)


                                    TextBox.Components = Components
                                    TextBox.__index = TextBox
                                    Library.Flags[TextBox.Flag] = TextBox
                                    return TextBox
                              end

                              function Section:Colorpicker(ColorpickerData)
                                    local Colorpicker = {
                                          Name = ColorpickerData.Name,
                                          Flag = ColorpickerData.Flag,
                                          Default = ColorpickerData.Default or { Color3.fromRGB(255, 255, 255), 0 }, -- {Color, Transparency}
                                          Callback = ColorpickerData.Callback or function() end,
                                          Class = "Colorpicker";
                                    }

                                    Colorpicker.__index = Colorpicker

                                    local Components = {}

                                    Components["Colorpicker"] = Globals:Instance("Frame", {
                                          BackgroundTransparency = 1,
                                          Size = UDim2.new(1, 0, 0, 20),
                                          Name = "Colorpicker",
                                          Parent = self.Components["SectionElements"],
                                          BorderSizePixel = 0,
                                    })

                                    Components["ColorpickerTitle"] = Globals:Instance("TextLabel", {
                                          Font = Enum.Font.SourceSans,
                                          Text = Colorpicker.Name,
                                          TextColor3 = Color3.fromRGB(129, 129, 129),
                                          TextSize = 14,
                                          TextXAlignment = Enum.TextXAlignment.Left,
                                          BackgroundTransparency = 1,
                                          Size = UDim2.new(1, 0, 0, 15),
                                          Name = "ColorpickerTitle",
                                          Parent = Components["Colorpicker"],
                                          BorderSizePixel = 0,
                                    })

                                    Components["ColorpickerButton"] = Globals:Instance("TextButton", {
                                          Font = Enum.Font.SourceSans,
                                          Text = "",
                                          TextColor3 = Color3.fromRGB(0, 0, 0),
                                          TextSize = 14,
                                          AutoButtonColor = false,
                                          BackgroundColor3 = Colorpicker.Default[1],
                                          Position = UDim2.new(1, -15, 0, 0),
                                          Size = UDim2.new(0, 15, 0, 15),
                                          Name = "ColorpickerButton",
                                          Parent = Components["Colorpicker"],
                                          BorderSizePixel = 0,
                                    })

                                    Globals:Instance("UICorner", {
                                          CornerRadius = UDim.new(0, 4),
                                          Parent = Components["ColorpickerButton"],
                                    })

                                    Globals:Instance("UIStroke", {
                                          ApplyStrokeMode = Enum.ApplyStrokeMode.Border,
                                          Color = Color3.fromRGB(24, 24, 24),
                                          Parent = Components["ColorpickerButton"],
                                    })

                                    Components["ColorpickerFrame"] = Globals:Instance("Frame", {
                                          BackgroundColor3 = Color3.fromRGB(11, 11, 11),
                                          BackgroundTransparency = 1, -- start fully transparent
                                          Position = UDim2.new(1, 20, 0, 0),
                                          Size = UDim2.new(0, 215, 0, 210),
                                          Name = "ColorpickerFrame",
                                          Parent = Window.Components.Outline,
                                          BorderSizePixel = 0,
                                          Visible = false,
                                    })

                                    Globals:Instance("UICorner", {
                                          CornerRadius = UDim.new(0, 3),
                                          Parent = Components["ColorpickerFrame"],
                                    })

                                    Globals:Instance("UIStroke", {
                                          Color = Color3.fromRGB(24, 24, 24),
                                          Transparency = 1, -- start fully transparent
                                          Thickness = 1.5,
                                          Parent = Components["ColorpickerFrame"],
                                    })

                                    Components["ColorpickerTitleLine"] = Globals:Instance("Frame", {
                                          BackgroundColor3 = Color3.fromRGB(24, 24, 24),
                                          BackgroundTransparency = 1, -- start fully transparent
                                          Position = UDim2.new(0, 0, 0, 25),
                                          Size = UDim2.new(1, 0, 0, 1),
                                          Name = "ColorpickerTitleLine",
                                          Parent = Components["ColorpickerFrame"],
                                          BorderSizePixel = 0,
                                    })

                                    Components["ColorpickerTitleHeader"] = Globals:Instance("TextLabel", {
                                          Font = Enum.Font.SourceSansSemibold,
                                          Text = "    " .. Colorpicker.Name,
                                          TextColor3 = Color3.fromRGB(255, 255, 255),
                                          TextSize = 14,
                                          TextXAlignment = Enum.TextXAlignment.Left,
                                          BackgroundTransparency = 1, -- start fully transparent
                                          BackgroundColor3 = Color3.fromRGB(14, 14, 14),
                                          Position = UDim2.new(0, 0, 0, 0),
                                          Size = UDim2.new(1, 0, 0, 25),
                                          Name = "ColorpickerTitleHeader",
                                          Parent = Components["ColorpickerFrame"],
                                          BorderSizePixel = 0,
                                    })

                                    Components["ColorpickerElements"] = Globals:Instance("Frame", {
                                          BackgroundColor3 = Color3.fromRGB(11, 11, 11),
                                          BackgroundTransparency = 1, -- start fully transparent
                                          Position = UDim2.new(0, 10, 0, 208),
                                          Size = UDim2.new(1, -20, -0.548837364, -50),
                                          Name = "ColorpickerElements",
                                          Parent = Components["ColorpickerFrame"],
                                          BorderSizePixel = 0,
                                    })

                                    Components["Colorwheel"] = Globals:Instance("ImageLabel", {
                                          Image = Library.ColorwheelImage,
                                          AnchorPoint = Vector2.new(0.5, 0),
                                          BackgroundTransparency = 1,
                                          Position = UDim2.new(0.5, -20, 0, 0),
                                          Size = UDim2.new(0, 150, 0, 150),
                                          Name = "Colorwheel",
                                          Parent = Components["ColorpickerElements"],
                                          BorderSizePixel = 0,
                                    })

                                    Globals:Instance("UICorner", {
                                          CornerRadius = UDim.new(1, 0),
                                          Parent = Components["Colorwheel"],
                                    })

                                    Globals:Instance("UIStroke", {
                                          ApplyStrokeMode = Enum.ApplyStrokeMode.Border,
                                          Color = Color3.fromRGB(24, 24, 24),
                                          Transparency = 1, -- start fully transparent
                                          Thickness = 3,
                                          Parent = Components["Colorwheel"],
                                    })

                                    Components["BrightnessPicker"] = Globals:Instance("TextButton", {
                                          Text = "",
                                          AutoButtonColor = false,
                                          BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                                          Position = UDim2.new(1, -35, 0, 0),
                                          Size = UDim2.new(0, 10, 0, 150),
                                          Name = "BrightnessPicker",
                                          Parent = Components["ColorpickerElements"],
                                          BorderSizePixel = 0,
                                    })

                                    Globals:Instance("UICorner", {
                                          CornerRadius = UDim.new(0, 4),
                                          Parent = Components["BrightnessPicker"],
                                    })

                                    Globals:Instance("UIStroke", {
                                          ApplyStrokeMode = Enum.ApplyStrokeMode.Border,
                                          Color = Color3.fromRGB(24, 24, 24),
                                          Transparency = 1, -- start fully transparent
                                          Parent = Components["BrightnessPicker"],
                                    })

                                    Globals:Instance("UIGradient", {
                                          Color = ColorSequence.new({
                                                ColorSequenceKeypoint.new(0, Color3.fromRGB(255, 255, 255)),
                                                ColorSequenceKeypoint.new(1, Color3.fromRGB(0, 0, 0)),
                                          }),
                                          Rotation = 90,
                                          Parent = Components["BrightnessPicker"],
                                    })

                                    Components["TransparencyPickerButton"] = Globals:Instance("TextButton", {
                                          Text = "",
                                          AutoButtonColor = false,
                                          BackgroundColor3 = Colorpicker.Default[1],
                                          Position = UDim2.new(1, -15, 0, 0),
                                          Size = UDim2.new(0, 10, 0, 150),
                                          Name = "TransparencyPickerButton",
                                          Parent = Components["ColorpickerElements"],
                                          BorderSizePixel = 0,
                                    })

                                    local TransparencyPicture = Globals:Instance("ImageLabel", {
                                          Image = Library.TransparencyImage,
                                          ScaleType = Enum.ScaleType.Tile,
                                          TileSize = UDim2.new(8, 0, 0.5, 0),
                                          BackgroundColor3 = Colorpicker.Default[1],
                                          Size = UDim2.new(1, 0, 1, 0),
                                          Name = "TransparencyPicture",
                                          Parent = Components["TransparencyPickerButton"],
                                          BorderSizePixel = 0,
                                          Rotation = 180,
                                          AnchorPoint = Vector2.new(0.5, 0.5),
                                          Position = UDim2.new(0.5, 0, 0.5, 0),
                                    })

                                    Globals:Instance("UIGradient", {
                                          Transparency = NumberSequence.new({
                                                NumberSequenceKeypoint.new(0, 0),
                                                NumberSequenceKeypoint.new(1, 1),
                                          }),
                                          Rotation = 90,
                                          Parent = TransparencyPicture,
                                    })

                                    Globals:Instance("UICorner", {
                                          CornerRadius = UDim.new(0, 4),
                                          Parent = Components["TransparencyPickerButton"],
                                    })

                                    Globals:Instance("UIStroke", {
                                          ApplyStrokeMode = Enum.ApplyStrokeMode.Border,
                                          Color = Color3.fromRGB(24, 24, 24),
                                          Parent = Components["TransparencyPickerButton"],
                                    })

                                    local WheelIndicator = Globals:Instance("Frame", {
                                          AnchorPoint = Vector2.new(0.5, 0.5),
                                          BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                                          BorderColor3 = Color3.fromRGB(0, 0, 0),
                                          BorderSizePixel = 2,
                                          Size = UDim2.new(0, 6, 0, 6),
                                          Name = "WheelIndicator",
                                          Parent = Components["Colorwheel"],
                                    })
                                    Globals:Instance("UICorner", { CornerRadius = UDim.new(1, 0), Parent = WheelIndicator })

                                    local BrightnessIndicator = Globals:Instance("Frame", {
                                          BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                                          BorderSizePixel = 1,
                                          Size = UDim2.new(1, 0, 0, 2),
                                          Name = "BrightnessIndicator",
                                          Parent = Components["BrightnessPicker"],
                                    })

                                    local TransparencyIndicator = Globals:Instance("Frame", {
                                          BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                                          BorderSizePixel = 1,
                                          Size = UDim2.new(1, 0, 0, 2),
                                          Name = "TransparencyIndicator",
                                          Parent = Components["TransparencyPickerButton"],
                                    })

                                    Colorpicker.Components = Components

                                    local function FadeInFrame(frame)
                                          frame.Visible = true
                                          Globals:TweenTransparencyIns(frame, 0, 0.2)
                                    end

                                    local function FadeOutFrame(frame)
                                          Globals:TweenTransparencyIns(frame, 1, 0.2)
                                          task.delay(0.2, function()
                                                if frame and frame.Parent then
                                                      frame.Visible = false
                                                end
                                          end)
                                    end

                                    Components["ColorpickerButton"].MouseButton1Down:Connect(function()
                                          local thisFrame = Components["ColorpickerFrame"]
                                          local isOpening = not (thisFrame.Visible and thisFrame.BackgroundTransparency < 1)

                                          for _, child in ipairs(Window.Components.Outline:GetChildren()) do
                                                if child.Name == "ColorpickerFrame" and child ~= thisFrame and child.Visible then
                                                      FadeOutFrame(child)
                                                end
                                          end

                                          if isOpening then
                                                FadeInFrame(thisFrame)
                                          else
                                                FadeOutFrame(thisFrame)
                                          end
                                    end)

                                    local function UpdateIndicators()
                                          local col, transparency = Colorpicker.Value[1], Colorpicker.Value[2]
                                          local h, s, v = col:ToHSV()

                                          local radius = Components["Colorwheel"].AbsoluteSize.X / 2
                                          local angle = h * 2 * math.pi
                                          local distance = s * radius
                                          local offset = Vector2.new(math.cos(angle), math.sin(angle)) * distance

                                          Globals:Tween(WheelIndicator, TweenInfo.new(0.15, Enum.EasingStyle.Quad), {
                                                Position = UDim2.new(0.5, offset.X, 0.5, offset.Y),
                                          })

                                          Globals:Tween(BrightnessIndicator, TweenInfo.new(0.15, Enum.EasingStyle.Quad), {
                                                Position = UDim2.new(0, 0, 1 - v, -1),
                                          })

                                          Globals:Tween(TransparencyIndicator, TweenInfo.new(0.15, Enum.EasingStyle.Quad), {
                                                Position = UDim2.new(0, 0, transparency, -1),
                                          })
                                    end

                                    function Colorpicker:Set(Value)
                                          self.Value = Value

                                          local col = Value[1]
                                          local transparency = Value[2]

                                          Globals:Tween(Components["ColorpickerButton"], TweenInfo.new(0.15, Enum.EasingStyle.Quad), {
                                                BackgroundColor3 = col,
                                          })

                                          Globals:Tween(TransparencyPicture, TweenInfo.new(0.15, Enum.EasingStyle.Quad), {
                                                BackgroundColor3 = col,
                                          })

                                          Globals:Tween(
                                                Components["TransparencyPickerButton"],
                                                TweenInfo.new(0.15, Enum.EasingStyle.Quad),
                                                {
                                                      BackgroundColor3 = col,
                                                }
                                          )

                                          local h, s, v = col:ToHSV()
                                          if v > 0 then
                                                self._LastHue = h
                                                self._LastSaturation = s
                                          end

                                          UpdateIndicators()
                                          Library:DoCallback(self.Callback, Value)
                                    end

                                    function Colorpicker:SetVisibility(visible)
                                          self.Colorpicker.Visible = visible
                                          if self.ColorpickerFrame.Visible and not visible then
                                                self.ColorpickerFrame.Visible = visible
                                          end
                                    end

                                    local function ColorFromWheel(x, y, wheel)
                                          local center = wheel.AbsolutePosition + wheel.AbsoluteSize / 2
                                          local radius = wheel.AbsoluteSize.X / 2
                                          local rel = Vector2.new(x, y) - center
                                          local distance = rel.Magnitude

                                          local hue, sat = 0, 0

                                          if distance > 0 then
                                                hue = math.atan2(rel.Y, rel.X) / (2 * math.pi)
                                                if hue < 0 then
                                                      hue = hue + 1
                                                end
                                                sat = math.clamp(distance / radius, 0, 1)
                                          end

                                          local _, _, v = Colorpicker.Value[1]:ToHSV()
                                          return Color3.fromHSV(hue, sat, v)
                                    end

                                    local function EnableDragging(Component, onDrag)
                                          Component.InputBegan:Connect(function(input)
                                                if input.UserInputType == Enum.UserInputType.MouseButton1 then
                                                      local moveConn, upConn
                                                      moveConn = RunService.RenderStepped:Connect(function()
                                                            local mousePos = UserInputService:GetMouseLocation()
                                                            local adjustedMousePos = Vector2.new(mousePos.X, mousePos.Y - MouseConstant)

                                                            onDrag(adjustedMousePos)
                                                      end)
                                                      upConn = UserInputService.InputEnded:Connect(function(endInput)
                                                            if endInput.UserInputType == Enum.UserInputType.MouseButton1 then
                                                                  moveConn:Disconnect()
                                                                  upConn:Disconnect()
                                                            end
                                                      end)
                                                end
                                          end)
                                    end

                                    EnableDragging(Components["Colorwheel"], function(mousePosRaw)
                                          local mousePos = Vector2.new(mousePosRaw.X, mousePosRaw.Y - MouseConstant)
                                          local col = ColorFromWheel(mousePos.X, mousePos.Y, Components["Colorwheel"])
                                          Colorpicker:Set({ col, Colorpicker.Value[2] })
                                    end)

                                    EnableDragging(Components["BrightnessPicker"], function(mousePosRaw)
                                          local mousePos = Vector2.new(mousePosRaw.X, mousePosRaw.Y - MouseConstant)
                                          local top = Components["BrightnessPicker"].AbsolutePosition.Y
                                          local height = Components["BrightnessPicker"].AbsoluteSize.Y
                                          local valueY = math.clamp((mousePos.Y - top) / height, 0, 1)

                                          local h, s = Colorpicker._LastHue or 0, Colorpicker._LastSaturation or 0
                                          local v = 1 - valueY

                                          local newColor = Color3.fromHSV(h, s, v)
                                          Colorpicker:Set({ newColor, Colorpicker.Value[2] })
                                    end)

                                    EnableDragging(Components["TransparencyPickerButton"], function(mousePosRaw)
                                          local mousePos = Vector2.new(mousePosRaw.X, mousePosRaw.Y - MouseConstant)
                                          local top = Components["TransparencyPickerButton"].AbsolutePosition.Y
                                          local height = Components["TransparencyPickerButton"].AbsoluteSize.Y
                                          local yVal = math.clamp((mousePos.Y - top) / height, 0, 1)
                                          Colorpicker:Set({ Colorpicker.Value[1], yVal })
                                    end)

                                    Colorpicker:Set(Colorpicker.Default)

                                    Library.Flags[Colorpicker.Flag] = Colorpicker
                                    return Colorpicker
                              end

                              function Section:Keybind(KeybindData)
                                    local Keybind = {
                                          Name = KeybindData.Name,
                                          Flag = KeybindData.Flag,
                                          Default = KeybindData.Default or nil,
                                          Callback = KeybindData.Callback or function() end,
                                          Key = KeybindData.Key or nil,
                                          Mode = KeybindData.Mode or "Toggle",
                                          Active = false,
                                          Class = "Keybind"
                                    }

                                    Keybind.__index = Keybind

                                    local Components = {}

                                    do --// Components
                                          Components["KeybindHolder"] = Globals:Instance("Frame", {
                                                BackgroundTransparency = 1,
                                                Size = UDim2.new(1, 0, 0, 20),
                                                Name = "KeybindHolder",
                                                Parent = self.Components["SectionElements"],
                                          })

                                          Components["KeybindTitle"] = Globals:Instance("TextLabel", {
                                                Font = Enum.Font.SourceSansSemibold,
                                                Text = Keybind.Name,
                                                TextColor3 = Color3.fromRGB(129, 129, 129),
                                                TextSize = 14,
                                                TextXAlignment = Enum.TextXAlignment.Left,
                                                BackgroundTransparency = 1,
                                                Size = UDim2.new(1, 0, 0, 15),
                                                Name = "KeybindTitle",
                                                Parent = Components["KeybindHolder"],
                                          })

                                          Components["KeybindButton"] = Globals:Instance("TextButton", {
                                                Font = Enum.Font.SourceSansSemibold,
                                                Text = "None",
                                                TextColor3 = Color3.fromRGB(135, 135, 135),
                                                TextSize = 14,
                                                TextXAlignment = Enum.TextXAlignment.Center,
                                                AutoButtonColor = false,
                                                BackgroundColor3 = Color3.fromRGB(11, 11, 11),
                                                BorderSizePixel = 0,
                                                Position = UDim2.new(1, -50, 0, 0),
                                                Size = UDim2.new(0, 50, 0, 15),
                                                Name = "KeybindButton",
                                                Parent = Components["KeybindHolder"],
                                          })

                                          Globals:Instance("UICorner", {
                                                CornerRadius = UDim.new(0, 4),
                                                Parent = Components["KeybindButton"],
                                          })

                                          Globals:Instance("UIStroke", {
                                                ApplyStrokeMode = Enum.ApplyStrokeMode.Border,
                                                Color = Color3.fromRGB(24, 24, 24),
                                                Parent = Components["KeybindButton"],
                                          })
                                    end

                                    Keybind.Components = Components

                                    function Keybind:SetVisibility(visible)
                                          self.KeybindHolder.Visible = visible
                                    end

                                    function Keybind:SetKey(input)
                                          if input then
                                                if typeof(input.UserInputType) == "string" then
                                                      input.UserInputType = Enum.UserInputType[input.UserInputType]

                                                      if input.UserInputType == "KeyCode" then
                                                            input.KeyCode = Enum.KeyCode[input.KeyCode]
                                                      end
                                                end

                                                local keyType
                                                local keyValue

                                                if
                                                      input.UserInputType == Enum.UserInputType.MouseButton1
                                                      or input.UserInputType == Enum.UserInputType.MouseButton2
                                                      or input.UserInputType == Enum.UserInputType.MouseButton3
                                                then
                                                      keyType = "MouseButton"
                                                      keyValue = input.UserInputType
                                                elseif input.UserInputType == Enum.UserInputType.Keyboard then
                                                      keyType = "KeyCode"
                                                      keyValue = input.KeyCode
                                                else
                                                      keyType = "UserInputType"
                                                      keyValue = input.UserInputType
                                                end

                                                self.Key = {
                                                      Type = keyType,
                                                      Value = keyValue,
                                                }

                                                Window.Hotkeys:UpdateStatus(
                                                      self.Name,
                                                      self.Active,
                                                      Library:FormatKeyName(Library:GetInputName(input))
                                                )
                                                Components["KeybindButton"].Text = Library:FormatKeyName(Library:GetInputName(input))
                                          else
                                                Window.Hotkeys:UpdateStatus(self.Name, self.Active, "", true)
                                                self.Key = nil
                                                Components["KeybindButton"].Text = "None"
                                          end

                                          Globals:Tween(
                                                Components["KeybindButton"],
                                                TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                                {
                                                      TextColor3 = Color3.fromRGB(129, 129, 129),
                                                }
                                          )
                                    end

                                    function Keybind:SetState(state)
                                          self.Active = state
                                          Window.Hotkeys:UpdateStatus(self.Name, self.Active)
                                          Library:DoCallback(self.Callback, state)
                                    end

                                    function Keybind:Set(value)
                                          self.Value = value
                                          self:SetKey(value)
                                    end

                                    function Keybind:Matches(input)
                                          if not self.Key then
                                                return false
                                          end

                                          if self.Key.Type == "KeyCode" then
                                                return input.KeyCode == self.Key.Value
                                          elseif self.Key.Type == "MouseButton" then
                                                return input.UserInputType == self.Key.Value
                                          elseif self.Key.Type == "UserInputType" then
                                                return input.UserInputType == self.Key.Value
                                          end

                                          return false
                                    end

                                    local Listening = false
                                    Library:Connection(
                                          "Keybind_" .. Keybind.Flag .. "_StartListen",
                                          Components["KeybindButton"].MouseButton1Click,
                                          function()
                                                if Listening then
                                                      return
                                                end
                                                Listening = true

                                                Globals:Tween(
                                                      Components["KeybindButton"],
                                                      TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                                      {
                                                            TextColor3 = Color3.fromRGB(11, 11, 11),
                                                      }
                                                )

                                                Components["KeybindButton"].Text = "..."

                                                Globals:Tween(
                                                      Components["KeybindButton"],
                                                      TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                                      {
                                                            TextColor3 = Color3.fromRGB(255, 255, 255),
                                                      }
                                                )

                                                local ConnectionName = "Keybind_" .. Keybind.Flag .. "_InputListen"
                                                task.wait(0.06)
                                                Library:Connection(ConnectionName, UserInputService.InputBegan, function(input, gpe)
                                                      if not Listening then
                                                            return
                                                      end
                                                      Listening = false
                                                      Library:Disconnect(ConnectionName)

                                                      if input.KeyCode == Enum.KeyCode.Backspace then
                                                            Keybind:Set(nil)
                                                            return
                                                      end

                                                      if
                                                            input.UserInputType == Enum.UserInputType.MouseButton1
                                                            or input.UserInputType == Enum.UserInputType.MouseButton2
                                                            or input.UserInputType == Enum.UserInputType.MouseButton3
                                                            or input.UserInputType == Enum.UserInputType.Keyboard
                                                      then
                                                            Keybind:SetKey(input)
                                                      end
                                                end)
                                          end
                                    )

                                    Library:Connection(
                                          "Keybind_" .. Keybind.Flag .. "_InputBegan",
                                          UserInputService.InputBegan,
                                          function(input, gpe)
                                                if gpe or Listening or not Keybind.Key then
                                                      return
                                                end

                                                if Keybind:Matches(input) then
                                                      if Keybind.Mode == "Toggle" then
                                                            Keybind:SetState(not Keybind.Active)
                                                      elseif Keybind.Mode == "Callback" then
                                                            Library:DoCallback(Keybind.Callback)
                                                      elseif Keybind.Mode == "Hold" then
                                                            Keybind:SetState(true)
                                                            Keybind.Active = true
                                                      end
                                                end
                                          end
                                    )

                                    Library:Connection(
                                          "Keybind_" .. Keybind.Flag .. "_InputEnded",
                                          UserInputService.InputEnded,
                                          function(input, gpe)
                                                if gpe or Listening or not Keybind.Key then
                                                      return
                                                end

                                                if Keybind:Matches(input) and Keybind.Mode == "Hold" and Keybind.Active then
                                                      Keybind:SetState(false)
                                                      Keybind.Active = false
                                                end
                                          end
                                    )

                                    Keybind:Set(Keybind.Default)
                                    Library.Flags[Keybind.Flag] = Keybind
                                    return Keybind
                              end

                              Section.Components = Components
                              Category.Sections[Section.Name] = Section
                              return Section
                        end

                        Category.Components = Components

                        do --// Connections
                              Library:Connection(
                                    "PageHandler" .. Category.Name,
                                    Components["CategoryButton"].MouseButton1Down,
                                    function()
                                          Window:SetCategory({
                                                Name = Tab.Name .. "_" .. Category.Name,
                                                Pointer = Category,
                                                Parent = Tab,
                                          })
                                    end
                              )

                              Library:Connection(
                                    "CategoryMouseEnter" .. Category.Name,
                                    Components.CategoryButton.MouseEnter,
                                    function()
                                          Globals:Tween(
                                                Components["CategoryStroke"],
                                                TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                                {
                                                      Color = Library.Theme.AccentedHighlight,
                                                }
                                          )
                                    end
                              )

                              Library:Connection(
                                    "CategoryMouseLeave" .. Category.Name,
                                    Components.CategoryButton.MouseLeave,
                                    function()
                                          if Components["CategoryButton"]:GetAttribute("Opened") then
                                                return
                                          end
                                          Globals:Tween(
                                                Components["CategoryStroke"],
                                                TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad),
                                                {
                                                      Color = Color3.fromRGB(24, 24, 24),
                                                }
                                          )
                                    end
                              )
                        end

                        table.insert(Tab.CategoryOrder, Category.Name)
                        Tab.Categories[Category.Name] = Category
                        return Category
                  end

                  Tab.Components = Components
                  Window.Tabs[TabData.Name] = Tab
                  return Tab
            end

            function Window:TabSeperator()
                  local Components = {}

                  Components["TabSeparatorHolder"] = Globals:Instance("Frame", {
                        BackgroundColor3 = Color3.fromRGB(255, 255, 255),
                        BackgroundTransparency = 1,
                        BorderColor3 = Color3.fromRGB(0, 0, 0),
                        BorderSizePixel = 0,
                        Size = UDim2.new(1, 0, 0, 1),
                        Name = "TabSeparatorHolder",
                        Parent = self.Components["TabsScrollingFrame"],
                  })

                  Components["TabSeparatorLine"] = Globals:Instance("Frame", {
                        AnchorPoint = Vector2.new(0, 0.5),
                        BackgroundColor3 = Color3.fromRGB(24, 24, 24),
                        BorderColor3 = Color3.fromRGB(0, 0, 0),
                        BorderSizePixel = 0,
                        Position = UDim2.new(0, 0, 0.5, 0),
                        Size = UDim2.new(1, -7, 1, 0),
                        Name = "TabSeparatorLine",
                        Parent = Components["TabSeparatorHolder"],
                  })

                  return Components
            end

            Window.Components = Components
            Library.Window = Window
            return Window
      end

      function Library:Notify(txt, duration, color)
            duration = duration or 3
            color = color or Color3.fromRGB(63, 201, 176)

            local Components = {}
            local Padding = 12
            local IconSize = 25
            local TextPadding = 5
            local LabelFontSize = 14
            local BottomBufferSize = 4

            local TemporaryLabel = Instance.new("TextLabel")
            TemporaryLabel.Size = UDim2.new(1, 0, 1, 0)
            TemporaryLabel.TextSize = LabelFontSize
            TemporaryLabel.Font = Enum.Font.SourceSansBold
            TemporaryLabel.Text = txt
            TemporaryLabel.TextWrapped = true
            TemporaryLabel.Parent = Library.Notifications
            TemporaryLabel.Visible = false

            task.wait()
            local TextBounds = TemporaryLabel.TextBounds
            TemporaryLabel:Destroy()

            local NotificationHeight = math.max(TextBounds.Y + BottomBufferSize, IconSize)
            local NotificationWidth = IconSize + TextBounds.X + TextPadding * 2

            local YPosition = 75
            for _, NotificationData in ipairs(Library.NotificationList) do
                  YPosition = YPosition + NotificationData.Height + Padding
            end

            Components["NewNotification"] = Globals:Instance("Frame", {
                  BackgroundColor3 = Color3.fromRGB(11, 11, 11),
                  BorderSizePixel = 0,
                  Position = UDim2.new(0, -NotificationWidth - 20, 0, YPosition),
                  Size = UDim2.new(0, NotificationWidth, 0, NotificationHeight),
                  Name = "NewNotification",
                  Parent = Library.Notifications,
            })

            Globals:Instance("UICorner", {
                  CornerRadius = UDim.new(0, 3),
                  Parent = Components["NewNotification"],
            })

            Globals:Instance("ImageLabel", {
                  Image = Library.ShadowImage,
                  ImageColor3 = color,
                  ImageTransparency = 0.7,
                  ScaleType = Enum.ScaleType.Slice,
                  SliceCenter = Rect.new(49, 49, 450, 450),
                  AnchorPoint = Vector2.new(0.5, 0.5),
                  BackgroundTransparency = 1,
                  BorderSizePixel = 0,
                  Position = UDim2.new(0.5, 0, 0.5, 0),
                  Size = UDim2.new(1, 30, 1, 30),
                  ZIndex = 0,
                  Parent = Components["NewNotification"],
            })

            Globals:Instance("UIStroke", {
                  Color = Color3.fromRGB(24, 24, 24),
                  Parent = Components["NewNotification"],
            })

            Globals:Instance("TextLabel", {
                  Font = Enum.Font.SourceSansBold,
                  Text = txt,
                  TextColor3 = Color3.new(1, 1, 1),
                  TextSize = LabelFontSize,
                  TextXAlignment = Enum.TextXAlignment.Left,
                  BackgroundTransparency = 1,
                  Position = UDim2.new(0, IconSize + TextPadding, 0, 0),
                  Size = UDim2.new(1, -IconSize - TextPadding * 2, 1, 0),
                  TextWrapped = true,
                  Parent = Components["NewNotification"],
            })

            Globals:Instance("ImageLabel", {
                  Image = Library.LogoImage,
                  ImageColor3 = color,
                  BackgroundTransparency = 1,
                  Size = UDim2.new(0, IconSize, 0, IconSize),
                  Position = UDim2.new(0, 0, 0.5, -IconSize / 2),
                  Parent = Components["NewNotification"],
            })

            table.insert(Library.NotificationList, {
                  Frame = Components["NewNotification"],
                  Height = NotificationHeight,
            })

            Globals:Tween(
                  Components["NewNotification"],
                  TweenInfo.new(0.35, Enum.EasingStyle.Quad, Enum.EasingDirection.Out),
                  {
                        Position = UDim2.new(0, 10, 0, YPosition),
                  }
            )

            local CurrentY = 75
            for _, NotificationData in ipairs(Library.NotificationList) do
                  Globals:Tween(NotificationData.Frame, TweenInfo.new(0.25, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {
                        Position = UDim2.new(0, 10, 0, CurrentY),
                  })
                  CurrentY = CurrentY + NotificationData.Height + Padding
            end

            task.delay(duration, function()
                  for _, child in pairs(Components["NewNotification"]:GetChildren()) do
                        if child:IsA("TextLabel") then
                              Globals:Tween(child, TweenInfo.new(0.2, Enum.EasingStyle.Linear, Enum.EasingDirection.Out), { TextTransparency = 1 })
                        elseif child:IsA("ImageLabel") then
                              Globals:Tween(child, TweenInfo.new(0.2, Enum.EasingStyle.Linear, Enum.EasingDirection.Out), { ImageTransparency = 1 })
                        elseif child:IsA("UIStroke") then
                              Globals:Tween(child, TweenInfo.new(0.2, Enum.EasingStyle.Linear, Enum.EasingDirection.Out), { Transparency = 1 })
                        end
                  end

                  task.wait(0.2)
                  local IterationToRemove
                  for i, NotificationData in ipairs(Library.NotificationList) do
                        if NotificationData.Frame == Components["NewNotification"] then
                              IterationToRemove = i
                              break
                        end
                  end

                  if IterationToRemove then
                        Library.NotificationList[IterationToRemove].Frame:Destroy()
                        table.remove(Library.NotificationList, IterationToRemove)
                  end

                  CurrentY = 75
                  for _, NotificationData in ipairs(Library.NotificationList) do
                        Globals:Tween(
                              NotificationData.Frame,
                              TweenInfo.new(0.25, Enum.EasingStyle.Quad, Enum.EasingDirection.Out),
                              {
                                    Position = UDim2.new(0, 10, 0, CurrentY),
                              }
                        )
                        CurrentY = CurrentY + NotificationData.Height + Padding
                  end
            end)
      end
end)()

Log("Loaded UI library.")
--#endregion Library

--#region Threads
Threads.__index = Threads

Threads.Run = LPH_NO_VIRTUALIZE(function(self)
	local Success, Error = pcall(self.Function)
	if not Success and Error then
            Log('Error: ' .. tostring(Error));
		Library:Notify("Error occured. "..tostring(Error), 1, Color3.fromRGB(255, 0, 0))
	end;
end)

Threads.New = LPH_NO_VIRTUALIZE(function(Name, Function, Priority)
	local Thread = setmetatable({
		Name = Name,
		Function = Function,
		Priority = Priority,
	}, Threads)

	if not Priority then
		Priority = "Render"
	end
	Thread.Priority = Priority

	local Index = #Threads[Priority] + 1
	Threads[Priority][Index] = Thread
	return Threads[Priority][Index]
end)
Log("Loaded threads library.")
--#endregion Threads

--#region Math
Math.RoundToIncrement = LPH_NO_VIRTUALIZE(function(value, increment)
	return math.round(value / increment) * increment
end)

Math.FloorVector = LPH_NO_VIRTUALIZE(function(Vector)
	if typeof(Vector) == "Vector2" then
		return Vector2.new(math.floor(Vector.X), math.floor(Vector.Y))
	else
		return Vector3.new(math.floor(Vector.X), math.floor(Vector.Y), math.floor(Vector.Z))
	end
end)
Log("Loaded math library.")
--#endregion Math

--#region Visuals
Visuals.Hitmarkers = {};

--// FOV
Visuals.FOVSpace = Globals:Instance("ScreenGui", { 
	Parent = CoreGui,
	IgnoreGuiInset = true;
});

Visuals.FOVOutline = Globals:Instance("Frame", { 
	AnchorPoint = Vector2.new(0.5, 0.5),
	Position = UDim2.new(0.5, 0, 0.5, 0),
	BackgroundTransparency = 1,
	ZIndex = 9999,
	Size = UDim2.new(0, 500, 0, 500),
	Visible = true,
	Parent = Visuals.FOVSpace,
	Visible = false,
});

Visuals.FOVCircle = Globals:Instance("Frame", { 
	BackgroundTransparency = 1,
	ZIndex = 9999,
	Position = UDim2.new(0, -1, 0, -1),
	Size = UDim2.new(1, 2, 1, 2),
	Visible = true,
	Parent = Visuals.FOVOutline,
	BackgroundColor3 = Library.Theme.Accent,
});

Visuals.FOVInline = Globals:Instance("Frame", { 
	Size = UDim2.new(1, -2, 1, -2),
	Position = UDim2.new(0, 1, 0, 1),
	BackgroundTransparency = 0.8,
	Parent = Visuals.FOVCircle,
	BackgroundColor3 = Library.Theme.Accent,
});

Visuals.FOVCircleCorner = Globals:Instance("UICorner", { 
	CornerRadius = UDim.new(1, 0),
	Parent = Visuals.FOVCircle,
});

Visuals.FOVInlineCorner = Globals:Instance("UICorner", { 
	CornerRadius = UDim.new(1, 0),
	Parent = Visuals.FOVInline
});

Visuals.FOVCircleStroke = Globals:Instance("UIStroke", { 
	Parent = Visuals.FOVCircle,
	Thickness = 3,
	Color = Library.Theme.Accent
});

Visuals.FOVOutlineStroke = Globals:Instance("UIStroke", { 
	Thickness = 5,
	Color = Color3.new(),
	Parent = Visuals.FOVOutline
});

Visuals.FOVOutlineCorner = Globals:Instance("UICorner", { 
	CornerRadius = UDim.new(1, 0),
	Parent = Visuals.FOVOutline
});
--

--// Crosshair 
Visuals.CrosshairHolder = Globals:Instance("Frame", { 
	Position = UDim2.new(0, Camera.ViewportSize.X /2 , 0, Camera.ViewportSize.Y / 2),
	Size = UDim2.new(0, 100, 0, 100),
	BackgroundTransparency = 1,
	Parent = Library.HeadsUp,
	AnchorPoint = Vector2.new(0.5, 0.5),
	Visible = false,
});

Visuals.CrosshairTop = Globals:Instance("Frame", { 
	AnchorPoint = Vector2.new(0.5, 0.5),
	BackgroundColor3 = Color3.fromRGB(255,255, 255),
	BorderColor3 = Color3.fromRGB(),
	BorderMode = Enum.BorderMode.Middle,
	Position = UDim2.new(0.5, 0, 0.5, -20),
	Size = UDim2.new(0, 2, 0, 20),
	Parent = Visuals.CrosshairHolder
});

Visuals.CrosshairTopGradient = Globals:Instance("UIGradient", { 
	Color = ColorSequence.new{
		ColorSequenceKeypoint.new(0, Color3.fromRGB(255, 255, 255)),
		ColorSequenceKeypoint.new(1, Color3.fromRGB(0, 0, 0))
	},
	Rotation = -90,
	Transparency = NumberSequence.new{
		NumberSequenceKeypoint.new(0, 0),
		NumberSequenceKeypoint.new(0.694513738155365, 0.5249999761581421),
		NumberSequenceKeypoint.new(0.8503741025924683, 0.78125),
		NumberSequenceKeypoint.new(1, 0.862500011920929)
	},
	Parent = Visuals.CrosshairTop
});

Visuals.CrosshairBottom = Globals:Instance("Frame", {
	AnchorPoint = Vector2.new(0.5, 0.5),
	BackgroundColor3 = Color3.fromRGB(255, 255, 255),
	BorderColor3 = Color3.fromRGB(0, 0, 0),
	BorderMode = Enum.BorderMode.Middle,
	Position = UDim2.new(0.5, 0, 0.5, 20),
	Size = UDim2.new(0, 2, 0, 20),
	Parent = Visuals.CrosshairHolder,
	Name = "Bottom"
})

Visuals.CrosshairBottomGradient = Globals:Instance("UIGradient", {
	Color = ColorSequence.new{
		ColorSequenceKeypoint.new(0, Color3.fromRGB(255, 255, 255)),
		ColorSequenceKeypoint.new(1, Color3.fromRGB(0, 0, 0))
	},
	Rotation = 90,
	Transparency = NumberSequence.new{
		NumberSequenceKeypoint.new(0, 0),
		NumberSequenceKeypoint.new(0.6945, 0.525),
		NumberSequenceKeypoint.new(0.8504, 0.78125),
		NumberSequenceKeypoint.new(1, 0.8625)
	},
	Parent = Visuals.CrosshairBottom
});

Visuals.CrosshairLeft = Globals:Instance("Frame", {
	AnchorPoint = Vector2.new(0.5, 0.5),
	BackgroundColor3 = Color3.fromRGB(255, 255, 255),
	BorderColor3 = Color3.fromRGB(0, 0, 0),
	BorderMode = Enum.BorderMode.Middle,
	Position = UDim2.new(0.5, -20, 0.5, 0),
	Size = UDim2.new(0, 20, 0, 2),
	Parent = Visuals.CrosshairHolder,
	Name = "Left"
})

Visuals.CrosshairLeftGradient = Globals:Instance("UIGradient", {
	Color = ColorSequence.new{
		ColorSequenceKeypoint.new(0, Color3.fromRGB(255, 255, 255)),
		ColorSequenceKeypoint.new(1, Color3.fromRGB(0, 0, 0))
	},
	Rotation = 180,
	Transparency = NumberSequence.new{
		NumberSequenceKeypoint.new(0, 0),
		NumberSequenceKeypoint.new(0.6945, 0.525),
		NumberSequenceKeypoint.new(0.8504, 0.78125),
		NumberSequenceKeypoint.new(1, 0.8625)
	},
	Parent = Visuals.CrosshairLeft
});

Visuals.CrosshairRight = Globals:Instance("Frame", {
	Name = "Right",
	AnchorPoint = Vector2.new(0.5, 0.5),
	BackgroundColor3 = Color3.fromRGB(255, 255, 255),
	BorderColor3 = Color3.fromRGB(0, 0, 0),
	BorderMode = Enum.BorderMode.Middle,
	Position = UDim2.new(0.5, 20, 0.5, 0),
	Size = UDim2.new(0, 20, 0, 2),
	Parent = Visuals.CrosshairHolder
});

Visuals.CrosshairRightGradient = Globals:Instance("UIGradient", {
	Color = ColorSequence.new{
		ColorSequenceKeypoint.new(0, Color3.fromRGB(255, 255, 255)),
		ColorSequenceKeypoint.new(1, Color3.fromRGB(0, 0, 0))
	},
	Transparency = NumberSequence.new{
		NumberSequenceKeypoint.new(0, 0),
		NumberSequenceKeypoint.new(0.694513738155365, 0.5249999761581421),
		NumberSequenceKeypoint.new(0.8503741025924683, 0.78125),
		NumberSequenceKeypoint.new(1, 0.862500011920929)
	},
	Parent = Visuals.CrosshairRight
});
--

--// ESP 
Visuals.MiscSpace = Globals:Instance("ScreenGui", {
	Parent = CoreGui,
	IgnoreGuiInset = true,
	DisplayOrder = 0,
	Name = "Misc Space",
});

Visuals.ESPSpace = Globals:Instance("ScreenGui", {
	Parent = CoreGui,
	IgnoreGuiInset = true,
	DisplayOrder = 0,
	Name = "ESP Space",
});

Visuals.LOSFrame = Globals:Instance("Frame", { 
	AnchorPoint = Vector2.new(0.5, 0),
	BackgroundTransparency = 1, 
	Size = UDim2.new(0, 500, 0, 500),
	Parent = Visuals.ESPSpace,
	Position = UDim2.new(0.5, 0, 0, 100)
});

Visuals.LOSLayout = Globals:Instance("UIListLayout", { 
	Parent = Visuals.LOSFrame, 
	Padding = UDim.new(0, 3),
});
--

--// Functions
Visuals.CreateHitmarker = LPH_NO_VIRTUALIZE(function(Part, Position) 
	local Index = #Visuals.Hitmarkers+1
	local Hitmarker = Globals:Instance("ImageLabel", { 
		Image = GetImage("HitmarkerImage");
		Size = UDim2.new(0, Library.Flags.HitmarkerSize.Value + 10, 0, Library.Flags.HitmarkerSize.Value + 10);
		BackgroundTransparency = 1;
		AnchorPoint = Vector2.new(0.5, 0.5);
		Parent = Visuals.ESPSpace,
		ZIndex = Library.Flags.PrioritizeHitmarkers.Value and 5 or 1,
		ImageTransparency = 1,
		ImageColor3 = Library.Flags.HitmarkerColor.Value[1];
		Visible = true;
	});

	Visuals.Hitmarkers[Index] = { 
		Position = Position,
		Part = Part,
		Hitmarker = Hitmarker;
	};

	Globals:Tween(Hitmarker, TweenInfo.new(0.25, Enum.EasingStyle.Quad), {
		ImageTransparency = 0;
		Size = UDim2.new(0, Library.Flags.HitmarkerSize.Value, 0, Library.Flags.HitmarkerSize.Value);
	});

	if Library.Flags.HitmarkerRandomRotation.Value then 
		Globals:Tween(Hitmarker, TweenInfo.new(0.25, Enum.EasingStyle.Quad), {
			Rotation = math.random(-90, 90)
		});
	end;

	Delay(Library.Flags.HitmarkerTime.Value, function() 
		local Tween = Globals:Tween(Hitmarker, TweenInfo.new(0.1, Enum.EasingStyle.Quad), {
			ImageTransparency = 1;
		});
		Tween.Completed:Wait() 
		Hitmarker:Destroy() 
		Visuals.Hitmarkers[Index] = nil
	end)
end);

Visuals.DrawLine = LPH_NO_VIRTUALIZE(function()
	local Frame = Drawing.new("Line");
	Frame.Visible = false;
	Frame.ZIndex = 2;
	Frame.Color = Color3.fromRGB(255, 255, 255);
	return Frame;
end);

Visuals.DrawOutline = LPH_NO_VIRTUALIZE(function()
	local Frame = Drawing.new("Line");
	Frame.Visible = false;
	Frame.ZIndex = 1;
	Frame.Thickness = 3
	Frame.Color = Color3.fromRGB(0, 0, 0);
	return Frame;
end);

Visuals.IsPartVisible = LPH_NO_VIRTUALIZE(function(Part, Origin)
	if not Part then
		return nil
	end

	if not Origin then 
		Origin = Camera.CFrame.p;
	end;

	local Direction = (Part.CFrame.p - Origin).Unit * ((Part.CFrame.p - Origin).Magnitude + 10)

	local Params = Globals.RaycastParams

	local RayResult = Workspace:Raycast(Origin, Direction, Params)

	if RayResult and RayResult.Instance and RayResult.Instance:IsDescendantOf(Part.Parent) then
		return true
	end

	return nil
end);

Visuals.GetDistanceFromCenter = LPH_NO_VIRTUALIZE(function(part)
	local position = part 
	if typeof(part) == "Instance" then 
		position = part.CFrame.p 
	end 
	local ScreenPosition, OnScreen = Camera:WorldToViewportPoint(position);
	if OnScreen then
		local Center = Vector2.new(Camera.ViewportSize.X / 2, Camera.ViewportSize.Y / 2)
		return (Center - Vector2.new(ScreenPosition.X, ScreenPosition.Y)).Magnitude
	end
	return math.huge 
end);
--

Log("Loaded visuals library.")
--#endregion Visuals

--#region EntityClass Global
EntityClass.__index = EntityClass
EntityClass.Global.__index = EntityClass.Global
EntityClass.Main.__index = EntityClass.Main
EntityClass.Main.Functions.__index = EntityClass.Main.Functions

EntityClass.Global.FindVisiblePosition = LPH_NO_VIRTUALIZE(function(Origin, Destination)
	local OriginalDestination = Destination
	if typeof(Origin) ~= "Vector3" then Origin = Origin.Position end

	local CameraCFrame = Camera.CFrame

	local ManipulationOffsets = {
		CameraCFrame * CFrame.new(3, 0, 0),
		CameraCFrame * CFrame.new(-3, 0, 0),
		CameraCFrame * CFrame.new(-6, 0, 0),
		CameraCFrame * CFrame.new(6, 0, 0),
		CameraCFrame * CFrame.new(3, 2, 0),
		CameraCFrame * CFrame.new(-3, 2, 0),
		CameraCFrame * CFrame.new(-6, 2, 0),
		CameraCFrame * CFrame.new(6, 2, 0),
		CameraCFrame * CFrame.new(4, 0, 0),
		CameraCFrame * CFrame.new(-4, 2, 0),
		CameraCFrame * CFrame.new(-4, 0, 0),
		CameraCFrame * CFrame.new(4, 2, 0),
		CameraCFrame * CFrame.new(7, 0, 0),
		CameraCFrame * CFrame.new(-7, 2, 0),
		CameraCFrame * CFrame.new(-7, 0, 0),
		CameraCFrame * CFrame.new(7, 2, 0),
		CameraCFrame * CFrame.new(0.2, 3.9, 0),
		CameraCFrame * CFrame.new(1.8, 4.1, 1),
		CameraCFrame * CFrame.new(2.1, 4.4, 1.1),
		CameraCFrame * CFrame.new(0.15, 5.2, 0.1),
		CameraCFrame * CFrame.new(-1.8, 5.4, -0.2),
		CameraCFrame * CFrame.new(-2.3, 6.35, -0.4),
		CameraCFrame * CFrame.new(0.1, 7.5, 0),
		CameraCFrame * CFrame.new(0.1, 8, 0),
		CameraCFrame * CFrame.new(0.1, 8, 0),
	}

	for _, offset in ManipulationOffsets do
		local newOrigin = offset.Position

		if Visuals.IsPartVisible(Destination, newOrigin) then
			return newOrigin
		end
	end

	return nil;
end);

EntityClass.Global.Create = LPH_NO_VIRTUALIZE(function(self, Object, Data)
	if typeof(Object) ~= "Instance" then
		rconsoleprint(
			"corescript",
			"invalid argument #2 <instance> expected. Did you index instead of namecall?",
			"Type recieved:",
			typeof(Object)
		)
		return
	end

	if typeof(Data) ~= "table" then
		rconsoleprint(
			"corescript",
			"invalid argument #3 <table> expected. Did you index instead of namecall?",
			"Type recieved:",
			typeof(Data)
		)
		return
	end

	local Entity = setmetatable({
		Name = Data.Name or Object.Name,
		Character = Data.Character or (Object:IsA("Player") and Object.Character),
		DisplayName = Object:IsA("Player") and Object.DisplayName or (Data.Name or Object.Name),
		Components = {},
		LastOffscreenRefresh = tick(),
		LastChamsRefresh = tick(),
		LastUpdate = tick(),
		Components = EntityClass.Main.Functions.CreateComponents(),
		CachedArmor = {},
		CachedItem = nil,
		CachedAttachments = {},
		ItemHistory = {},
		Class = Data.Class,
		ClassType = Data.ClassType,
		Pointer = Object,
		Adornments = {},
	}, EntityClass.Main.Functions)

	EntityClass.Main.Cache[Object] = Entity
	return Entity
end);

Log("Loaded EntityClass Global library.")
--#endregion EntityClass Global

--#region EntityClass Main
EntityClass.FlagProperties = { 
	Size = UDim2.new(0, 200, 0, 7),
	FontFace = Fonts.SmallestPixel, 
	TextSize = 8, 
	BackgroundTransparency = 1,
	TextTransparency = 1,
	TextStrokeTransparency = 1, 
	Text = "",
	ClipsDescendants = false,
	TextXAlignment = Enum.TextXAlignment.Left;
	TextYAlignment = Enum.TextYAlignment.Top;
};

EntityClass.Main.Functions.__index = EntityClass.Main.Functions;

EntityClass.Main.Functions.Remove = LPH_NO_VIRTUALIZE(function(self, Instance) 
	local ObjectPointer = EntityClass.Main.Cache[Instance];
	if not ObjectPointer then return end; 

	ObjectPointer.Components.LookAngle:Remove();
	ObjectPointer.Components.LookAngleOutline:Remove();

	for Index, Value in ObjectPointer.Components do 
		if Index == "Corners" or Index == "LookAngle" or Index == "Skeleton" or Index == "LookAngleOutline" then continue end;
		Value:Destroy();
	end;

	for Index, Value in ObjectPointer.Components.Corners do 
		Value:Destroy();
	end; 

	for Index, Value in ObjectPointer.Components.Skeleton do 
		Value:Remove();
	end; 

	EntityClass.Main.Cache[Instance] = nil;
end);

EntityClass.Main.Functions.ApplyArmorVisuals = LPH_NO_VIRTUALIZE(function(self, Instance)
	if Instance:IsA("MeshPart") and Instance.Transparency ~= 1 then 
		Instance:SetAttribute("OriginalMaterial", Instance.Material);
		Instance:SetAttribute("OriginalColor", Instance.Color);
		Instance:SetAttribute("OriginalTextureId", Instance.TextureID);
		Instance:SetAttribute("OriginalReflectance", Instance.Reflectance)
		Instance.CanQuery = false; 

		if Library.Flags["Sandbox"..self.ClassType] and Library.Flags["Sandbox"..self.ClassType].Value then 
			Instance.Color = Library.Flags[self.ClassType.."ArmorColor"].Value[1]; 
			Instance.Reflectance = Library.Flags[self.ClassType.."ArmorReflectance"].Value * Library.Flags[self.ClassType.."ArmorReflectanceMul"].Value;
			Instance.Material = Library.Flags[self.ClassType.."ArmorMaterial"].Value;
			if Instance:IsA("MeshPart") and Instance.Material == Enum.Material.ForceField then 
				Instance.TextureID = "rbxassetid://10913193650";
			elseif Instance:IsA("MeshPart") and Instance.Material ~= Enum.Material.ForceField then 
				Instance.TextureID = "";
			end;
		else 
			Instance.Color = Instance:GetAttribute("OriginalColor");
			Instance.Material = Instance:GetAttribute("OriginalMaterial");
			Instance.Reflectance = Instance:GetAttribute("OriginalReflectance")
			if Instance:IsA("MeshPart") then 
				Instance.TextureID = Instance:GetAttribute("OriginalTextureId")
			end;
		end;
	end;
end);

EntityClass.Main.Functions.OnCharacterAdded = LPH_NO_VIRTUALIZE(function(self, Character) 
	self.CachedArmor = {}
	self.CachedItem = nil;
	if not Character then 
		rconsoleprint("invalid argument #1, <Instance> expected, got", typeof(Character))
		return
	end;

	for Index, Child in next, Character:GetChildren() do 
		if table.find(EntityClass.ItemList, Child.Name) then 
			self.CachedItem = Child;
		end;

		if Child.Name:find("Armor") then 
			for Index, MeshPart in Child:GetChildren() do 
				self:ApplyArmorVisuals(MeshPart)
			end;

			if Globals.ArmorNames[Child.Name] then 
				local Info = Globals.ArmorNames[Child.Name]
				self.CachedArmor[Child] = {
					Name = Info.Name,
					Skin = Info.Skin
				};

			else 
				local ModelName = Child.Name;

				local ArmorSplit = ModelName:split("/");

				if not ArmorSplit then return end;
				local ArmorFormat = ArmorSplit[1]
				local Skin = ArmorSplit[2];

				local ArmorFormatSplit = ArmorFormat:split("_");
				local ArmorId = ArmorFormatSplit[2];
				ArmorId = tonumber(ArmorId)
				local ArmorInfo = Globals.ArmorIds[ArmorId]

				if ArmorInfo then 
					self.CachedArmor[Child] = { 
						Name = ArmorInfo.Name,
						Skin = Skin
					};

					Globals.ArmorNames[Child.Name] = {
						Name = ArmorInfo.Name,
						Skin = Skin
					};
				end;
			end;
		end; 
	end;

	Character.ChildAdded:Connect(function(Child)
		task.wait(0.3);
		if Child and table.find(EntityClass.ItemList, Child.Name) then 
			self.CachedItem = Child;
		end;

		if Child and Child.Name:find("Armor") then 

			for Index, MeshPart in Child:GetChildren() do 
				self:ApplyArmorVisuals(MeshPart)
			end;

			if Globals.ArmorNames[Child.Name] then 
				local Info = Globals.ArmorNames[Child.Name]
				self.CachedArmor[Child] = {
					Name = Info.Name,
					Skin = Info.Skin
				};

			else 
				local ModelName = Child.Name;

				local ArmorSplit = ModelName:split("/");

				if not ArmorSplit then return end;
				local ArmorFormat = ArmorSplit[1]
				local Skin = ArmorSplit[2];

				local ArmorFormatSplit = ArmorFormat:split("_");
				local ArmorId = ArmorFormatSplit[2];
				ArmorId = tonumber(ArmorId)
				local ArmorInfo = Globals.ArmorIds[ArmorId]
                        if (not ArmorInfo) then
                              return;
                        end;

				self.CachedArmor[Child] = { 
					Name = ArmorInfo.Name,
					Skin = Skin
				};

				Globals.ArmorNames[Child.Name] = {
					Name = ArmorInfo.Name,
					Skin = Skin
				};
			end;
		end;   
	end);

	Character.ChildRemoved:Connect(function(Child) 
		if self.CachedItem == Child then 
			self.CachedItem = nil;
		end;

		if self.CachedArmor[Child] then 
			self.CachedArmor[Child] = nil;
		end;
	end)
end);

EntityClass.Main.Functions.CreateComponents = LPH_NO_VIRTUALIZE(function(self)
	local Components = {}

	--// Box Outline
	Components.BoxOutline = Globals:Instance("Frame", {
		Parent = Visuals.ESPSpace,
		Visible = false,
		BackgroundTransparency = 1,
		ZIndex = 2,
	})

	Components.BoxOutlineStroke = Globals:Instance("UIStroke", {
		Parent = Components.BoxOutline,
		Thickness = 3,
		Color = Color3.fromRGB(0, 0, 0),
		ApplyStrokeMode = Enum.ApplyStrokeMode.Border,
		LineJoinMode = Enum.LineJoinMode.Miter,
	})
	--

	--// Box Inline 
	Components.BoxInline = Globals:Instance("Frame", { 
		Parent = Components.BoxOutline,
		Visible = true,
		BackgroundTransparency = 1,
		Position = UDim2.new(0, -1, 0, -1),
		Size = UDim2.new(1, 2, 1, 2),
		ZIndex = 2
	})

	Components.BoxInlineStroke = Globals:Instance("UIStroke", { 
		Parent = Components.BoxInline, 
		LineJoinMode = Enum.LineJoinMode.Miter, 
		Color = Color3.fromRGB(255, 255, 255)
	})
	--

	--// Corners
	Components.FakeCornerBox = Globals:Instance("Frame", { 
		Parent = Components.BoxOutline, 
		BackgroundTransparency = 1, 
		Size = UDim2.new(1, 4, 1, 2),
		Position = UDim2.new(0, -2, 0, -1),
	});

	local Corners = {}

	local CornerWidth = 0.3
	local CornerHeight = 0.3
	local Thickness = 1
	local Offset = -Thickness

	--// Inline
	Corners[1] = Instance.new("Frame")
	Corners[1].Parent = Components.FakeCornerBox
	Corners[1].Size = UDim2.new(CornerWidth, 0, 0, Thickness)
	Corners[1].Position = UDim2.new(0, 0, 0, Offset)
	Corners[1].BackgroundColor3 = Color3.fromRGB(255, 255, 255)
	Corners[1].BorderSizePixel = 0
	Corners[1].Visible = false

	Corners[2] = Instance.new("Frame")
	Corners[2].Parent = Components.FakeCornerBox
	Corners[2].Size = UDim2.new(0, Thickness, CornerHeight, 0)
	Corners[2].Position = UDim2.new(0, 0, 0, Offset)
	Corners[2].BackgroundColor3 = Color3.fromRGB(255, 255, 255)
	Corners[2].BorderSizePixel = 0

	Corners[3] = Instance.new("Frame")
	Corners[3].Parent = Components.FakeCornerBox
	Corners[3].Size = UDim2.new(CornerWidth, 0, 0, Thickness)
	Corners[3].Position = UDim2.new(1 - CornerWidth, 0, 0, Offset)
	Corners[3].BackgroundColor3 = Color3.fromRGB(255, 255, 255)
	Corners[3].BorderSizePixel = 0

	Corners[4] = Instance.new("Frame")
	Corners[4].Parent = Components.FakeCornerBox
	Corners[4].Size = UDim2.new(0, Thickness, CornerHeight, 0)
	Corners[4].Position = UDim2.new(1, -Thickness, 0, Offset)
	Corners[4].BackgroundColor3 = Color3.fromRGB(255, 255, 255)
	Corners[4].BorderSizePixel = 0

	Corners[5] = Instance.new("Frame")
	Corners[5].Parent = Components.FakeCornerBox
	Corners[5].Size = UDim2.new(0, Thickness, CornerHeight, 0)
	Corners[5].Position = UDim2.new(0, 0, 1 - CornerHeight, 0)
	Corners[5].BackgroundColor3 = Color3.fromRGB(255, 255, 255)
	Corners[5].BorderSizePixel = 0

	Corners[6] = Instance.new("Frame")
	Corners[6].Parent = Components.FakeCornerBox
	Corners[6].Size = UDim2.new(CornerWidth, 0, 0, Thickness)
	Corners[6].Position = UDim2.new(0, 0, 1, 0)
	Corners[6].BackgroundColor3 = Color3.fromRGB(255, 255, 255)
	Corners[6].BorderSizePixel = 0

	Corners[7] = Instance.new("Frame")
	Corners[7].Parent = Components.FakeCornerBox
	Corners[7].Size = UDim2.new(0, Thickness, CornerHeight, 0)
	Corners[7].Position = UDim2.new(1, -Thickness, 1 - CornerHeight, 0)
	Corners[7].BackgroundColor3 = Color3.fromRGB(255, 255, 255)
	Corners[7].BorderSizePixel = 0

	Corners[8] = Instance.new("Frame")
	Corners[8].Parent = Components.FakeCornerBox
	Corners[8].Size = UDim2.new(CornerWidth, 0, 0, Thickness)
	Corners[8].Position = UDim2.new(1 - CornerWidth, 0, 1, 0)
	Corners[8].BackgroundColor3 = Color3.fromRGB(255, 255, 255)
	Corners[8].BorderSizePixel = 0

	--// Outline (same layout, just with BorderSizePixel = 1)
	for i = 9, 16 do
		local base = Corners[i - 8]:Clone()
		base.Parent = Components.FakeCornerBox
		base.BorderSizePixel = 1
		base.BorderColor3 = Color3.fromRGB(0, 0, 0)
		Corners[i] = base
	end

	Components.Corners = Corners
	--

	--// Healthbar 
	Components["Healthbar"] = Globals:Instance("Frame", { 
		Parent = Components.BoxOutline, 
		Size = UDim2.new(0, 1, 1, 4),
		Position = UDim2.new(0, -6, 0, -2),
		BackgroundColor3 = Color3.fromRGB(255, 0, 0),
		BorderColor3 = Color3.fromRGB(0, 0, 0),
		BorderSizePixel = 1,
		Visible = false
	});

	Components["HealthbarBlackout"] = Globals:Instance("Frame", { 
		BackgroundColor3 = Color3.fromRGB(),
		Size = UDim2.new(0, 0, 0, 0),
		Parent = Components.Healthbar;
		BorderSizePixel = 0,
		Visible = false
	});

	Components.Health = Globals:Instance("TextLabel", { 
		BackgroundTransparency = 1, 
		Parent = Components.HealthbarBlackout,
		Visible = false,
		FontFace = EntityClass.Font,
		TextSize = EntityClass.FontSize, 
		TextXAlignment = Enum.TextXAlignment.Right, 
		TextYAlignment = Enum.TextYAlignment.Top,
		TextColor3 = Color3.fromRGB(255, 255, 255),
		Text = "",
		Size = UDim2.new(0, 20, 0, 12),
		Position = UDim2.new(-1, -23, 0, -2)
	});

	Components.HealthStroke = Globals.ApplyTextStroke(Components.Health);
	--

	--// Name 
	Components.Name = Globals:Instance("TextLabel", { 
		Parent = Components.BoxOutline, 
		FontFace = EntityClass.Font, 
		TextSize = EntityClass.FontSize, 
		BackgroundTransparency = 1,
		TextColor3 = Color3.fromRGB(255, 255, 255),
		Size = UDim2.new(1, 0, 0, 14),
		Position = UDim2.new(0, 0, 0, -17),
		TextStrokeTransparency = 1,
		Visible = false,
	});

	Components.NameStroke = Globals.ApplyTextStroke(Components.Name)
	--

	--// Weapon 
	Components.Distance = Globals:Instance("TextLabel", { 
		Parent = Components.BoxOutline,
		ZIndex = 1,
		TextSize = EntityClass.FontSize, 
		Size = UDim2.new(1, 0, 0, 14),
		Position = UDim2.new(0, 0, 1, 6),
		TextStrokeTransparency = 1,
		Visible = false,
		Text = "",
		BackgroundTransparency = 1,
		FontFace = EntityClass.Font, 
		TextColor3 = Color3.fromRGB(255, 255, 255),

	});
	Components.DistanceStroke = Globals.ApplyTextStroke(Components.Distance)
	--

	--// Weapon 
	Components.Weapon = Globals:Instance("TextLabel", { 
		Parent = Components.BoxOutline,
		ZIndex = 1,
		TextSize = EntityClass.FontSize, 
		Size = UDim2.new(1, 0, 0, 14),
		Position = UDim2.new(0, 0, 1, 6),
		TextStrokeTransparency = 1,
		Visible = false,
		Text = "",
		BackgroundTransparency = 1,
		FontFace = EntityClass.Font, 
		TextColor3 = Color3.fromRGB(255, 255, 255),

	});
	Components.WeaponStroke = Globals.ApplyTextStroke(Components.Weapon)
	--

	--// Weapon Image 
	Components.WeaponImage = Globals:Instance("ImageLabel", { 
		Parent = Components.BoxOutline, 
		ZIndex = 1,
		Image = GetImage("Salvaged AK47"),
		AnchorPoint = Vector2.new(0.5, 0),
		Size = UDim2.new(0, 25, 0, 25),
		ScaleType = Enum.ScaleType.Fit, 
		ImageColor3 = Color3.fromRGB(255, 255, 255),
		BackgroundTransparency = 1
	})
	--

	--// Flags Container
	Components.FlagsContainer = Globals:Instance("Frame", { 
		Parent = Components.BoxOutline, 
		ClipsDescendants = true, 
		Size = UDim2.new(0, 150, 1, 12),
		Position = UDim2.new(1, 2, 0, -6),
		BackgroundTransparency = 1,
	});

	Components.FlagsListLayout = Globals:Instance("UIListLayout", { 
		Padding = UDim.new(0, 0),
		SortOrder = Enum.SortOrder.LayoutOrder, 
		Parent = Components.FlagsContainer,
	});

	Components.FlagsPadding = Globals:Instance("UIPadding", { 
		PaddingTop = UDim.new(0, 2),
		Parent = Components.FlagsContainer,
		PaddingLeft = UDim.new(0, 2),
	})
	--

	--// Flags
	for FlagName, FlagData in EntityClass.Flags do 
		Components["Flag_"..FlagName] = Globals:Instance("TextLabel", EntityClass.FlagProperties);
		Components["Flag_"..FlagName].Parent = Components.FlagsContainer
		Components["FlagStroke_"..FlagName] = Globals.ApplyTextStroke(Components["Flag_"..FlagName]);
		Components["FlagStroke_"..FlagName].Transparency = 1;
	end;
	--

	--// Offscreen 
	Components.OffscreenArrow = Globals:Instance("TextLabel", { 
		Text = "?",
		TextSize = 14, 
		BackgroundTransparency = 1, 
		Size = UDim2.new(0, 20, 0, 20),
		Visible = false, 
		Parent = Visuals.ESPSpace
	});

	Components.ArrowStroke = Globals.ApplyTextStroke(Components.OffscreenArrow)
	--

	--// LOSIndicator 
	Components.LOSIndicator = Globals:Instance("TextLabel", { 
		Parent = Visuals.LOSFrame, 
		FontFace = Font.new("rbxasset://fonts/families/GothamSSm.json", Enum.FontWeight.Bold), 
		TextSize = 15, 
		BackgroundTransparency = 1,
		TextColor3 = Color3.fromRGB(255, 255, 255),
		Size = UDim2.new(1, 0, 0, 0),
		Position = UDim2.new(0, 0, 0, -18),
		TextStrokeTransparency = 1,
		TextTransparency = 1,
		Visible = false,
		TextYAlignment = Enum.TextYAlignment.Top;
	});

	Components.LOSStroke = Globals.ApplyTextStroke(Components.LOSIndicator);
	Components.LOSStroke.Transparency = 1;
	--

	--// LookAngle
	Components["LookAngle"] = Visuals.DrawLine();
	Components["LookAngleOutline"] = Visuals.DrawOutline();
	--

	--// Skeleton
	Components["Skeleton"] = {
		Main = Visuals.DrawLine();

		RL_line = Visuals.DrawLine();
		LL_line = Visuals.DrawLine();

		RightFoot = Visuals.DrawLine();
		LeftFoot =  Visuals.DrawLine();

		LeftArm = Visuals.DrawLine();
		RightArm = Visuals.DrawLine();

		RightElbow = Visuals.DrawLine();
		LeftElbow = Visuals.DrawLine();

		Hips = Visuals.DrawLine();
		Shoulders = Visuals.DrawLine();

		MainOutline = Visuals.DrawOutline();

		RL_lineOutline = Visuals.DrawOutline();
		LL_lineOutline = Visuals.DrawOutline();

		RightFootOutline = Visuals.DrawOutline();
		LeftFootOutline =  Visuals.DrawOutline();

		LeftArmOutline = Visuals.DrawOutline();
		RightArmOutline = Visuals.DrawOutline();

		RightElbowOutline = Visuals.DrawOutline();
		LeftElbowOutline = Visuals.DrawOutline();

		HipsOutline = Visuals.DrawOutline();
		ShouldersOutline = Visuals.DrawOutline();
	};
	--
	return Components
end);

EntityClass.Main.Functions.GetBoxSize = LPH_NO_VIRTUALIZE(function(self)
	local Character = self.Character
	local Root = self.Root
	local CameraPosition = Camera.CFrame.Position

	if not Character or not Root then
		return { Visible = false, OnScreen = false, Root = nil }
	end

	if (CameraPosition - Root.Position).Magnitude > 2000 then
		return { Visible = false, OnScreen = false, Root = Root }
	end

	local MaxWidth, MaxHeight, MaxDepth = 10, 20, 10
	local BoundingPosition, BoundingSize = self:GetBoundingBox(Character, Root.CFrame)
	local HalfSize = BoundingSize / 2

	local ClampedSize = Vector3.new(
		math.min(HalfSize.X, MaxWidth / 2) * 2,
		math.min(HalfSize.Y, MaxHeight / 2) * 2,
		math.min(HalfSize.Z, MaxDepth / 2) * 2
	)

	local CornerOffsets = {
		Vector3.new( ClampedSize.X/2,  ClampedSize.Y/2,  ClampedSize.Z/2),
		Vector3.new( ClampedSize.X/2,  ClampedSize.Y/2, -ClampedSize.Z/2),
		Vector3.new( ClampedSize.X/2, -ClampedSize.Y/2,  ClampedSize.Z/2),
		Vector3.new( ClampedSize.X/2, -ClampedSize.Y/2, -ClampedSize.Z/2),
		Vector3.new(-ClampedSize.X/2,  ClampedSize.Y/2,  ClampedSize.Z/2),
		Vector3.new(-ClampedSize.X/2,  ClampedSize.Y/2, -ClampedSize.Z/2),
		Vector3.new(-ClampedSize.X/2, -ClampedSize.Y/2,  ClampedSize.Z/2),
		Vector3.new(-ClampedSize.X/2, -ClampedSize.Y/2, -ClampedSize.Z/2),
	}

	local MinX, MinY = math.huge, math.huge
	local MaxX, MaxY = -math.huge, -math.huge
	local OnScreenCount = 0

	local WorldToViewportPoint = Camera.WorldToViewportPoint

	for _, Offset in ipairs(CornerOffsets) do
		local WorldCorner = BoundingPosition:PointToWorldSpace(Offset)
		local ScreenPos, OnScreen = WorldToViewportPoint(Camera, WorldCorner)
		if OnScreen then
			OnScreenCount += 1
			MinX = math.min(MinX, ScreenPos.X)
			MinY = math.min(MinY, ScreenPos.Y)
			MaxX = math.max(MaxX, ScreenPos.X)
			MaxY = math.max(MaxY, ScreenPos.Y)
		end
	end

	if OnScreenCount == 0 and Character:FindFirstChild("Head") then
		local Visible = Visuals.IsPartVisible(Character.Head)
		return {
			Root = Root,
			OnScreen = false,
			RootPosition = Root.Position,
			Visible = Visible,
			VisiblePart = Visible and Character.Head or nil,
		}
	end

	local VisiblePart = nil
	local PartsToCheck = {
		Character:FindFirstChild("HumanoidRootPart"),
		Character:FindFirstChild("RightLowerLeg"),
		Character:FindFirstChild("LeftLowerLeg"),
		Character:FindFirstChild("RightUpperArm"),
		Character:FindFirstChild("LeftUpperArm"),
	}

	for _, Part in ipairs(PartsToCheck) do
		if Part and Part:IsA("BasePart") and Visuals.IsPartVisible(Part) then
			VisiblePart = Part
			break
		end
	end

	local Width = MaxX - MinX
	local Height = MaxY - MinY
	local Size = Math.FloorVector(Vector2.new(Width, Height))
	local Position = Math.FloorVector(Vector2.new(MinX, MinY))
	local Center2D = Vector2.new(Position.X + Size.X / 2, Position.Y + Size.Y / 2)

	return {
		Visible = VisiblePart ~= nil,
		VisiblePart = VisiblePart,
		Root = Root,
		RootPosition = Root.Position,
		Height = Height,
		Width = Width,
		Size = Size,
		Position = Position,
		Center2D = Center2D,
		OnScreen = OnScreenCount > 0,
	}
end);

EntityClass.Main.Functions.GetBoundingBox = LPH_NO_VIRTUALIZE(function(self, Model, Orientation)
	local Parts = typeof(Model) == "Instance" and Model:GetChildren() or Model
	Orientation = Orientation or CFrame.new()

	local Inf = math.huge
	local MinX, MinY, MinZ = Inf, Inf, Inf
	local MaxX, MaxY, MaxZ = -Inf, -Inf, -Inf

	for _, Part in ipairs(Parts) do
		if Part:IsA("BasePart") then
			local Cf = Orientation:ToObjectSpace(Part.CFrame)
			local Sx, Sy, Sz = Part.Size.X, Part.Size.Y, Part.Size.Z
			local X, Y, Z, R00, R01, R02, R10, R11, R12, R20, R21, R22 = Cf:components()

			local Wsx = 0.5 * (math.abs(R00) * Sx + math.abs(R01) * Sy + math.abs(R02) * Sz)
			local Wsy = 0.5 * (math.abs(R10) * Sx + math.abs(R11) * Sy + math.abs(R12) * Sz)
			local Wsz = 0.5 * (math.abs(R20) * Sx + math.abs(R21) * Sy + math.abs(R22) * Sz)

			MinX = math.min(MinX, X - Wsx)
			MinY = math.min(MinY, Y - Wsy)
			MinZ = math.min(MinZ, Z - Wsz)

			MaxX = math.max(MaxX, X + Wsx)
			MaxY = math.max(MaxY, Y + Wsy)
			MaxZ = math.max(MaxZ, Z + Wsz)
		end
	end

	local MinVec = Vector3.new(MinX, MinY, MinZ)
	local MaxVec = Vector3.new(MaxX, MaxY, MaxZ)
	local Middle = (MaxVec + MinVec) / 2
	local Cf = Orientation - Orientation.Position + Orientation:PointToWorldSpace(Middle)
	local Size = MaxVec - MinVec

	return Cf, Size
end);

EntityClass.Main.Functions.GetDistance = LPH_NO_VIRTUALIZE(function(self)
	local root = self.Root
	if not root then
		return 9e9
	end
	return math.floor((root.Position - Camera.CFrame.Position).Magnitude)
end);

EntityClass.Main.Functions.GetHealth = LPH_NO_VIRTUALIZE(function(self)
	if (self.Class == "Player" or self.Class == "AI") and self.Character then
		if self.Character.Name == "BTR" then 
			return self.Character:GetAttribute("Health"), self.Character:GetAttribute("MaxHealth")
		end

		local Humanoid = self.Humanoid
		if not Humanoid then
			return 0, 100
		end
		return Humanoid.Health, Humanoid.MaxHealth
	end

	return 0, 100
end);

EntityClass.Main.Functions.GetRoot = LPH_NO_VIRTUALIZE(function(self)
	local character = self.Character
	if not character then
		return
	end

	local Humanoid = character:FindFirstChildOfClass("Humanoid")
	if Humanoid then
		self.Humanoid = Humanoid
	end

	if self.Class == "Player" or self.Class == "AI" then
		return Humanoid and Humanoid.RootPart or character:FindFirstChild("HumanoidRootPart")
	end
end);

EntityClass.Main.Functions.GetCharacter = LPH_NO_VIRTUALIZE(function(self)
	if self.Class == "AI" then 
		return self.Pointer
	end

	if self.Class == "Player" then 
		return self.Pointer.Character
	end
end);

EntityClass.Main.Functions.ProjectSkeletonLine = LPH_NO_VIRTUALIZE(function(self, part, offset)
	local pos = part.Position + (offset or Vector3.zero)
	local screenPos = Camera:WorldToViewportPoint(pos)
	return Math.FloorVector(Vector2.new(screenPos.X, screenPos.Y))
end);

EntityClass.Main.Functions.SetSkeletonLine = LPH_NO_VIRTUALIZE(function(self, name, from, to, transparency, color)
	local line = self.Components.Skeleton[name]
	if line then
		line.Visible = true
		line.From = from
		line.To = to
		line.Color = color
		line.Transparency = 1 - transparency
	end

	local outline = self.Components.Skeleton[name .. "Outline"]
	if outline then
		outline.Visible = true
		outline.From = from
		outline.To = to
		outline.Transparency = 1 - transparency
	end
end);

EntityClass.Main.Functions.SetSkeletonsInvisible = LPH_NO_VIRTUALIZE(function(self)
	if self.Components.Skeleton.RL_line.Visible then 
		for _, Line in self.Components.Skeleton do 
			Line.Visible = false;
		end;
	end;
end);

EntityClass.Main.Functions.Update = LPH_NO_VIRTUALIZE(function(self)
	self.Character = self:GetCharacter()
	self.Root = self:GetRoot()
	self.Distance = self:GetDistance()
	self.CoreInformation = self:GetBoxSize() or {}

	local Components = self.Components

	if not self.Root then 
		Components.LOSIndicator.Visible = false
		Components.OffscreenArrow.Visible = false
		Components.BoxOutline.Visible = false
		Components.LookAngle.Visible = false
		Components.LookAngleOutline.Visible = false
		self:SetSkeletonsInvisible()
		return
	end;

	local Health, MaxHealth = self:GetHealth()
	local CoreInformation = self.CoreInformation
	local Visible = CoreInformation.Visible
	local ClassType = self.ClassType
	local Flags = Library.Flags
	local StatusColor = not Visible and Flags[ClassType.."OccludedColor"].Value[1] or Flags[ClassType.."VisibleColor"].Value[1]

	if self == EntityClass.TargetData then
		StatusColor = Flags.TargetColor.Value[1]
		if EntityClass.ManipulatedPlayer == self.Pointer then
			StatusColor = Flags.ManipColor.Value[1]
		end
	end

	self.IsDead = Health <= 0.1
	local Transparency = self.IsDead and 1 or 0

	Globals:Tween(Components.BoxInlineStroke, TweenInfo.new(EntityClass.AnimationSpeed, Enum.EasingStyle.Quad), {
		Color = StatusColor
	})

	Globals:Tween(Components.BoxOutlineStroke, TweenInfo.new(EntityClass.AnimationSpeed + 0.25, Enum.EasingStyle.Quad), {
		Transparency = Transparency
	})

	local ComponentColor = Components.BoxInlineStroke.Color
	Transparency = Components.BoxOutlineStroke.Transparency
	local BoxCorners = Components.Corners
	local BottomBounds = 1
	local HasItem = self.CachedItem ~= nil

	if Flags.LockOnIndicator.Value and ClassType == "Player" and Flags.PlayerESP.Value then
		local ClientHead = Client.Character and Client.Character:FindFirstChild("Head")
		local EnemyHead = self.Character and self.Character:FindFirstChild("Head")

		if EnemyHead and ClientHead then
			local Delta = (ClientHead.Position - EnemyHead.Position)
			local Distance = Delta.Magnitude
			local Direction = Delta.Unit
			local LookVector = EnemyHead.CFrame.LookVector
			local DotProduct = LookVector:Dot(Direction)
			local CrossProduct = LookVector:Cross(Direction).Magnitude
			local Angle = math.deg(math.atan2(CrossProduct, DotProduct))
			local MaxAngle = math.clamp(60 - (Distance/10), 15, 60)
			local Percentage = math.floor(math.clamp(100 - (Angle/MaxAngle * 100), 0, 100))
			local IsLooking = Angle <= MaxAngle
			local ThroughWalls = not Visible
			local Color = Percentage >= Flags.LockOnRisk.Value and Color3.fromRGB(255, 0, 0) or Color3.fromRGB(255, 255, 255)

			if IsLooking and Percentage >= Flags.LockOnThreshold.Value then
				Components.LOSIndicator.LayoutOrder = tick()
				Components.LOSIndicator.Visible = true
				Components.LOSIndicator.Text = string.format(
					"%s %s (%d%%) [%d studs]\n",
					self.Name,
					ThroughWalls and "is looking at you through walls" or "is looking at you",
					Percentage,
					math.floor(Distance)
				)

				if not Components.LOSIndicator:GetAttribute("IsTweening") then
					Components.LOSIndicator:SetAttribute("IsTweening", true)
					local Tween = Globals:Tween(Components.LOSIndicator, TweenInfo.new(EntityClass.AnimationSpeed, Enum.EasingStyle.Quad), {
						TextColor3 = Color,
						Size = UDim2.new(1, 0, 0, Components.LOSIndicator.TextSize),
						TextTransparency = 0
					})
					Components.LOSStroke.Transparency = Components.LOSIndicator.TextTransparency
					Tween.Completed:Connect(function()
						Components.LOSIndicator:SetAttribute("IsTweening", false)
					end)
				end
				Components.LOSStroke.Transparency = Components.LOSIndicator.TextTransparency
			else
				if not Components.LOSIndicator:GetAttribute("IsTweening") then
					Components.LOSIndicator:SetAttribute("IsTweening", true)
					local Tween = Globals:Tween(Components.LOSIndicator, TweenInfo.new(EntityClass.AnimationSpeed, Enum.EasingStyle.Quad), {
						Size = UDim2.new(1, 0, 0, 0),
						TextTransparency = 1
					})
					Tween.Completed:Connect(function()
						task.wait(0.1)
						Components.LOSIndicator:SetAttribute("IsTweening", false)
						Components.LOSIndicator.Visible = false
					end)
				end
				Components.LOSStroke.Transparency = Components.LOSIndicator.TextTransparency
			end
		end
	else
		Components.LOSIndicator.Visible = false
	end

	if CoreInformation.OnScreen and Flags[ClassType.."ESP"].Value then
		Components.OffscreenArrow.Visible = false
		local CanShowWeapon = ClassType == "Player" and Flags[ClassType.."Weapon"]
		local CanShowWeaponImage = ClassType == "Player" and Flags[ClassType.."WeaponImage"]
		local TweenProperties = TweenInfo.new(EntityClass.AnimationSpeed, Enum.EasingStyle.Quad)

		if tick() - self.LastChamsRefresh > Flags.ChamsRefreshRate.Value then
			self.LastChamsRefresh = tick()
			for _, Part in self.Character:GetChildren() do
				if Part:IsA("Model") and Part.Name:find("Armor") then 
					for Index, MeshPart in Part:GetChildren() do 
						self:ApplyArmorVisuals(MeshPart)
					end;
				end;

				if Part:IsA("BasePart") and not EntityClass.IgnoreNames[Part.Name] then
					if not self.Adornments[Part] then
						local Adornments = {}
						local Adornment
						for Vis = 1, 2 do
							if Part.Name == "Head" then
								Adornment = Globals:Instance("CylinderHandleAdornment", {
									Name = "",
									Adornee = Part,
									Parent = Part,
									ZIndex = Vis == 1 and 2 or 1,
									Height = Vis == 1 and 0.87 or 1.02,
									Radius = Vis == 1 and 0.5 or 0.65,
									CFrame = CFrame.new(Vector3.new(), Vector3.new(0, 1, 0)),
									Visible = false,
									AlwaysOnTop = Vis == 1
								})
							else
								local SizeOffset = Vis == 1 and -0.05 or 0.05
								Adornment = Globals:Instance("BoxHandleAdornment", {
									Name = "",
									Adornee = Part,
									Parent = Part,
									ZIndex = Vis == 1 and 2 or 1,
									AlwaysOnTop = Vis == 1,
									Size = Part.Size + Vector3.new(SizeOffset, SizeOffset, SizeOffset),
									Visible = false
								})
							end
							Adornments[Vis] = Adornment
						end
						self.Adornments[Part] = Adornments
					else
						local Adornments = self.Adornments[Part]
						if Adornments then
							local OccludedColor = Flags[ClassType.."ChamsOccludedColor"].Value[1]
							local OccludedTransparency = Flags[ClassType.."ChamsOccludedColor"].Value[2]
							local ShouldShow = Flags[ClassType.."Chams"].Value
							local GlowChams = Flags[ClassType.."ChamsStyle"].Value == "Glow"
							local VisibleColor = Flags[ClassType.."ChamsVisibleColor"].Value[1]
							local VisibleTransparency = Flags[ClassType.."ChamsVisibleColor"].Value[2]

							Adornments[1].Visible = ShouldShow
							Adornments[1].Color3 = OccludedColor
							Adornments[1].Transparency = OccludedTransparency

							Adornments[2].Visible = ShouldShow
							Adornments[2].ZIndex = GlowChams and 9e9 or 1
							Adornments[2].AlwaysOnTop = GlowChams
							Adornments[2].Color3 = VisibleColor
							Adornments[2].Transparency = VisibleTransparency
						end
					end
				end
			end
		end

		Components.BoxOutline.Position = UDim2.new(0, CoreInformation.Position.X, 0, CoreInformation.Position.Y)
		Components.BoxOutline.Size = UDim2.new(0, CoreInformation.Size.X, 0, CoreInformation.Size.Y)
		Components.BoxOutline.Visible = true

		local CanUseSolid = Flags[ClassType.."BoundingBox"].Value and Flags[ClassType.."BoxStyle"].Value == "Solid"
		Components.BoxOutlineStroke.Enabled = CanUseSolid
		Components.BoxInlineStroke.Enabled = CanUseSolid

		ComponentColor = Components.BoxInlineStroke.Color

		Components.BoxInlineStroke.Transparency = Transparency

		for Index = 1, 16 do
			BoxCorners[Index].Visible = Flags[ClassType.."BoundingBox"].Value and Flags[ClassType.."BoxStyle"].Value == "Corner"

			if BoxCorners[Index].Visible then 
				if Index <= 8 then 
					BoxCorners[Index].ZIndex = 3
					BoxCorners[Index].BackgroundColor3 = ComponentColor
				end;
				BoxCorners[Index].BackgroundTransparency = Transparency
			end;
		end

		if Flags[ClassType.."Healthbar"].Value then
			local HealthPercent = Health / MaxHealth
			if tostring(HealthPercent) == "nan" then
				HealthPercent = 0
			end

			local CalculatedSize = UDim2.new(1, 0, 1 - HealthPercent, 0)

			Components.HealthbarBlackout.Visible = true
			Components.Healthbar.Visible = true
			Components.Healthbar.BackgroundTransparency = Transparency
			Components.HealthbarBlackout.BackgroundTransparency = Transparency

			local ShowIfDamaged = Flags[ClassType.."ShowHealthIfDamaged"].Value
			local CanShowHealth = not ShowIfDamaged or (ShowIfDamaged and Health < MaxHealth)

			if Flags[ClassType.."Health"].Value and CanShowHealth then
				Components.Health.Visible = true
				Components.Health.Text = tostring(math.floor(HealthPercent * 100))
				Components.Health.TextTransparency = Transparency
				Components.HealthStroke.Transparency = Transparency
			else
				Components.Health.Visible = false
			end

			if Health ~= self.LastHealth then
				self.LastHealth = Health
				Globals:Tween(Components.HealthbarBlackout, TweenInfo.new(EntityClass.AnimationSpeed, Enum.EasingStyle.Quad), {
					Size = CalculatedSize
				})

				local LerpedColor = Flags[ClassType.."LowerHealthColor"].Value[1]:lerp(Flags[ClassType.."HigherHealthColor"].Value[1], Health / MaxHealth)

				Globals:Tween(Components.Healthbar, TweenInfo.new(EntityClass.AnimationSpeed, Enum.EasingStyle.Quad), {
					BackgroundColor3 = LerpedColor
				})
			end
		else
			Components.Healthbar.Visible = false
		end

		if Flags[ClassType.."Name"].Value then
			Components.Name.Visible = true
			Components.NameStroke.Transparency = Transparency
			Components.Name.TextTransparency = Transparency
			Components.Name.Text = self.Name
			Components.Name.TextColor3 = ComponentColor
		else
			Components.Name.Visible = false
		end

		if Flags[ClassType.."Distance"].Value then
			Components.Distance.Visible = true
			Components.DistanceStroke.Transparency = Transparency
			Components.Distance.Text = tostring(self.Distance).."s"
			Components.Distance.TextColor3 = ComponentColor
			Components.Distance.TextTransparency = Transparency
			Components.Distance.Position = UDim2.new(0, 0, 1, BottomBounds)
			BottomBounds += 8
		else
			Components.Distance.Visible = false
		end

		if CanShowWeapon and CanShowWeapon.Value then
			Components.Weapon.Visible = true

			if HasItem and self.CachedItem then
				Components.Weapon.Text = self.CachedItem.Name
			end

			Components.Weapon.TextColor3 = ComponentColor

			if not Components.Weapon:GetAttribute("IsTweening") then
				Components.Weapon:SetAttribute("IsTweening", true)

				local TargetY = HasItem and BottomBounds or (BottomBounds - 4)
				local WeaponTween = Globals:Tween(Components.Weapon, TweenProperties, {
					TextTransparency = HasItem and Transparency or 1,
					Position = UDim2.new(0, 0, 1, TargetY)
				})

				Globals:Tween(Components.WeaponStroke, TweenProperties, {
					Transparency = HasItem and Transparency or 1
				})

				WeaponTween.Completed:Connect(function()
					Components.Weapon:SetAttribute("IsTweening", false)
				end)
			end

			BottomBounds += 6
		else
			Components.Weapon.Visible = false
		end

		if CanShowWeaponImage and CanShowWeaponImage.Value then
			if not Components.Weapon.Visible then
				BottomBounds -= 4
			end

			local WeaponImage = (HasItem and self.CachedItem and EntityClass.WeaponImages[self.CachedItem.Name]) or nil
			local HasImage = HasItem and WeaponImage ~= nil

			Components.WeaponImage.Visible = HasImage
			if HasImage then
				Components.WeaponImage.Image = WeaponImage
			end

			if not Components.WeaponImage:GetAttribute("IsTweening") then
				Components.WeaponImage:SetAttribute("IsTweening", true)

				local TargetY = HasImage and BottomBounds or (BottomBounds - 5)
				local ImageTween = Globals:Tween(Components.WeaponImage, TweenProperties, {
					ImageTransparency = HasImage and Transparency or 1,
					Position = UDim2.new(0.5, 0, 1, TargetY)
				})

				ImageTween.Completed:Connect(function()
					Components.WeaponImage:SetAttribute("IsTweening", false)
				end)
			end
		else
			Components.WeaponImage.Visible = false
		end

		if ClassType == "Player" and Flags[ClassType.."Flags"].Value then
			Components.FlagsContainer.Visible = true
			local AnimationSpeed = EntityClass.AnimationSpeed
			local EasingStyle = Enum.EasingStyle.Quad
			local TweenInfo = TweenInfo.new(AnimationSpeed, EasingStyle)

			for FlagName, FlagData in EntityClass.Flags do
				local ShouldShow = FlagData.Allow(self)
				local Flag = Components["Flag_"..FlagName]
				local FlagStroke = Components["FlagStroke_"..FlagName]

				if not Flag then
					Flag = Globals:Instance("TextLabel", EntityClass.FlagProperties)
					Flag.Parent = Components.FlagsContainer
					FlagStroke = Globals.ApplyTextStroke(Flag)
					FlagStroke.Transparency = 1
					Components["Flag_"..FlagName] = Flag
					Components["FlagStroke_"..FlagName] = FlagStroke
				end

				if Flag then
					local Text = FlagData.Text(self) or ""
					Flag.TextColor3 = FlagData.Color and FlagData.Color(self) or Flags[FlagName.."FlagColor"].Value[1]
					Flag.Text = " "..Text

					if not Flag:GetAttribute("IsTweening") then
						Flag:SetAttribute("IsTweening", true)
						if ShouldShow then
							Flag.Visible = true
							Flag.LayoutOrder = tick()
						end

						local FlagTween = Globals:Tween(Flag, TweenInfo, {
							TextTransparency = ShouldShow and Transparency or 1,
							Size = ShouldShow and UDim2.new(0, 200, 0, Flag.TextBounds.Y) or UDim2.new(0, 200, 0, 0)
						})

						Globals:Tween(FlagStroke, TweenInfo, {
							Transparency = ShouldShow and Transparency or 1
						})

						FlagTween.Completed:Connect(function()
							Flag:SetAttribute("IsTweening", false)
							Flag.Visible = ShouldShow
						end)
					end
				end
			end
		else
			Components.FlagsContainer.Visible = false
		end

		if Flags[ClassType.."LookAngle"].Value and self.Character:FindFirstChild("Head") and not Library.IsOpen then
			local Head = self.Character.Head
			local HeadPos, HeadOnScreen = Camera:WorldToViewportPoint(Head.Position)
			local LookPos, LookOnScreen = Camera:WorldToViewportPoint(Head.Position + Head.CFrame.LookVector * 5)

			local Line = Components.LookAngle
			local Outline = Components.LookAngleOutline

			if HeadOnScreen and LookOnScreen then
				local From = Vector2.new(HeadPos.X, HeadPos.Y)
				local To = Vector2.new(LookPos.X, LookPos.Y)

				From = Math.FloorVector(From)
				To = Math.FloorVector(To)

				Line.Visible = true
				Line.From = From
				Line.To = To
				Line.Color = ComponentColor
				Line.Transparency = 1 - Transparency

				Outline.Visible = true
				Outline.From = From
				Outline.To = To
				Outline.Transparency = 1 - Transparency
			else
				Line.Visible = false
				Outline.Visible = false
			end
		else
			Components.LookAngle.Visible = false
			Components.LookAngleOutline.Visible = false
		end

		if Flags[ClassType.."Skeleton"].Value and self.Character:FindFirstChild("Head") and not Library.IsOpen then
			local Valid = true
			for _, Part in {"UpperTorso", "RightUpperLeg", "LeftFoot", "RightFoot", "LeftUpperLeg", "LeftUpperArm", "RightUpperArm", "RightLowerArm", "RightHand", "LeftHand"} do
				if not self.Character:FindFirstChild(Part) then
					Valid = false
					break
				end
			end

			if Valid then
				local Head = self:ProjectSkeletonLine(self.Character.Head)
				local RL = self:ProjectSkeletonLine(self.Character.RightUpperLeg)
				local LL = self:ProjectSkeletonLine(self.Character.LeftUpperLeg)

				local RightLeg = self:ProjectSkeletonLine(self.Character.RightUpperLeg, Vector3.new(0, 0.5, 0))
				local LeftLeg = self:ProjectSkeletonLine(self.Character.LeftUpperLeg, Vector3.new(0, 0.5, 0))

				local RightFoot = self:ProjectSkeletonLine(self.Character.RightFoot)
				local LeftFoot = self:ProjectSkeletonLine(self.Character.LeftFoot)

				local RightArm = self:ProjectSkeletonLine(self.Character.RightUpperArm, Vector3.new(0, 0.2, 0))
				local LeftArm = self:ProjectSkeletonLine(self.Character.LeftUpperArm, Vector3.new(0, 0.2, 0))

				local RightElbow = self:ProjectSkeletonLine(self.Character.RightLowerArm, Vector3.new(0, 0.2, 0))
				local LeftElbow = self:ProjectSkeletonLine(self.Character.LeftLowerArm, Vector3.new(0, 0.2, 0))

				local RightHand = self:ProjectSkeletonLine(self.Character.RightHand)
				local LeftHand = self:ProjectSkeletonLine(self.Character.LeftHand)

				self:SetSkeletonLine("RightFoot", RightFoot, RL, Transparency, ComponentColor)
				self:SetSkeletonLine("LeftFoot", LeftFoot, LL, Transparency, ComponentColor)

				self:SetSkeletonLine("LL_line", LeftLeg, LL, Transparency, ComponentColor)
				self:SetSkeletonLine("RL_line", RightLeg, RL, Transparency, ComponentColor)

				self:SetSkeletonLine("RightArm", RightArm, RightElbow, Transparency, ComponentColor)
				self:SetSkeletonLine("RightElbow", RightElbow, RightHand, Transparency, ComponentColor)

				self:SetSkeletonLine("LeftArm", LeftArm, LeftElbow, Transparency, ComponentColor)
				self:SetSkeletonLine("LeftElbow", LeftElbow, LeftHand, Transparency, ComponentColor)

				self:SetSkeletonLine("Main", Vector2.new((LeftLeg.X + RightLeg.X) / 2, LeftLeg.Y), Head, Transparency, ComponentColor)
				self:SetSkeletonLine("Hips", LeftLeg, RightLeg, Transparency, ComponentColor)
				self:SetSkeletonLine("Shoulders", RightArm, LeftArm, Transparency, ComponentColor)
			else
				self:SetSkeletonsInvisible()
			end
		else
			self:SetSkeletonsInvisible()
		end
	else
		Components.BoxOutline.Visible = false
		Components.LookAngle.Visible = false
		Components.LookAngleOutline.Visible = false
		self:SetSkeletonsInvisible()

		if CoreInformation.Root and Flags[ClassType.."Offscreen"] and Flags[ClassType.."Offscreen"].Value then
			local ArrowRadius = Flags[ClassType.."OffscreenRadius"].Value
			local Size = Flags[ClassType.."OffscreenSize"].Value

			local Arrow = Components.OffscreenArrow
			local CameraPosition = Camera.CFrame.p
			local ViewAngle = Camera.CFrame.lookVector

			local ScreenPos = Camera:WorldToScreenPoint(CoreInformation.Root.Position)
			local Center = Camera.ViewportSize / 2
			local Direction = (Vector2.new(ScreenPos.X, ScreenPos.Y) - Vector2.new(Center.X, Center.Y)).Unit

			local OffscreenRadius = ArrowRadius
			local ClampedPosition = Vector2.new(Center.X, Center.Y) + Direction * OffscreenRadius

			Arrow.TextSize = Size
			Arrow.Size = UDim2.new(0, 25, 0, 25)
			Arrow.Position = UDim2.new(0, ClampedPosition.X - Arrow.Size.X.Offset / 2, 0, ClampedPosition.Y - Arrow.Size.Y.Offset / 2)
			Arrow.Rotation = math.deg(math.atan2(Direction.Y, Direction.X)) + 90
			Arrow.Visible = true
			Arrow.TextColor3 = ComponentColor
			Arrow.TextTransparency = Transparency
			Components.ArrowStroke.Transparency = Transparency
		else
			Components.OffscreenArrow.Visible = false
		end
	end
end)

EntityClass.Main.Functions.AddFlag = LPH_NO_VIRTUALIZE(function(self, Data)
	EntityClass.Flags[Data.Name] = Data;
	return EntityClass.Flags[Data.Name]
end)

Log("Loaded EntityClass main library.")
--#endregion EntityClass Main

--#region EntityClass Misc 
EntityClass.Misc.Functions.__index = EntityClass.Misc   .Functions;

EntityClass.Misc.Functions.CreateComponents = LPH_NO_VIRTUALIZE(function(self)
	local Components = {}

	Components.Name = Globals:Instance("TextLabel", { 
		Parent = Visuals.MiscSpace,
		ZIndex = 1,
		BackgroundTransparency = 1,
		TextSize = EntityClass.FontSize,
		Text = "",
		FontFace = EntityClass.Font,
		Size = UDim2.new(0, 0, 0, EntityClass.FontSize), 
		Visible = false,
		Position = UDim2.new(0, 0, 0, 0),
		TextYAlignment = Enum.TextYAlignment.Top,
		AutomaticSize = Enum.AutomaticSize.Y
	})

	Components.NameStroke = Globals.ApplyTextStroke(Components.Name)

	return Components
end)

EntityClass.Misc.Functions.ScanParent  = LPH_NO_VIRTUALIZE(function(self)
	local ParentFolder = self.Parent; 
	local ClassName    = self.ClassName; 
	local Name         = self.Name; 
	for Index, Object in ParentFolder:GetChildren() do 
		if Object.ClassName == ClassName or Name == Object.Name then 
			self.Object = Object
			EntityClass.Misc.Cache[Object] = { 
				Components = self:CreateComponents(),
				Listener = self,
				Object = Object,
			};
		end;
	end; 

	ParentFolder.ChildAdded:Connect(function(Object)
		task.wait(0.5);
		if ParentFolder == Workspace:FindFirstChild("Drops") then 
			task.wait(2);
		end;

		if (Object.ClassName == ClassName or Name == Object.Name) and not Object:GetAttribute("IsThrow") and not EntityClass.Misc.Cache[Object] then 
			EntityClass.Misc.Cache[Object] = { 
				Components = self:CreateComponents(),
				Listener = self,
				Object = Object,
			};
			Object:GetPropertyChangedSignal("Parent"):Connect(function()
				if Object.Parent ~= ParentFolder and EntityClass.Misc.Cache[Object] then 
					for _, Component in EntityClass.Misc.Cache[Object].Components do 
						Component:Destroy();
					end; 
					EntityClass.Misc.Cache[Object] = nil
				end
			end);
			Object:GetAttributeChangedSignal("IsThrow"):Connect(function()
				task.wait(0.1);
				if Object:GetAttribute("IsThrow") then 
					for _, Component in EntityClass.Misc.Cache[Object].Components do 
						Component:Destroy();
					end; 
					EntityClass.Misc.Cache[Object] = nil
				end;
			end);
		end;
	end);

	ParentFolder.ChildRemoved:Connect(function(Object)
		if EntityClass.Misc.Cache[Object] then 
			for _, Component in EntityClass.Misc.Cache[Object].Components do 
				Component:Destroy();
			end; 
			EntityClass.Misc.Cache[Object] = nil
		end;
	end);
end);

EntityClass.Misc.Functions.AddListener = LPH_NO_VIRTUALIZE(function(Data)
        --[[local ObjectListener = setmetatable({
            Listener    = Data.Listener,
            GetPosition = Data.GetPosition,
            GetDistance = Data.GetDistance,
            GetColor    = Data.GetColor or function()
                return Library.Flags[Data.Flag .. "MiscColor"].Value[1]
            end,
            GetAlpha = Data.GetAlpha or function()
                return Library.Flags[Data.Flag .. "MiscColor"].Value[2]
            end,
            Flag      = Data.Flag,
            GetName   = Data.GetName,
            Parent    = Data.Parent,
            ClassName = Data.ClassName,
            Name      = Data.Name,
            Validate  = Data.Validate,
        }, EntityClass.Misc.Functions)

        ObjectListener:ScanParent()

        task.spawn(function()
            local LastState = false
            while task.wait(5) do
                local Toggle = Library.Flags["ESP" .. ObjectListener.Flag]
                local Enabled = Toggle and Toggle.Value
                
                if Enabled and not LastState then
                    ObjectListener:ScanParent()
                elseif not Enabled and LastState then
                    for Object, Entry in pairs(EntityClass.Misc.Cache) do
                        if Entry.Listener == ObjectListener then
                            for _, Component in pairs(Entry.Components) do
                                Component:Destroy()
                            end
                            EntityClass.Misc.Cache[Object] = nil
                        end
                    end
                end
                
                LastState = Enabled
            end
        end)

        task.spawn(function()
            local Toggle = Library.Flags["ESP" .. ObjectListener.Flag]
            if Toggle and Toggle.Value then
                ObjectListener:ScanParent()
            end
        end)

        return ObjectListener]]
end)

Log("Loaded EntityClass Misc library.")
--#endregion EntityClass Misc

--#region UI Setup

    --[[do --// Loader bullshit
        task.wait(1)
        local Loader = Library:CreateLoader("never")
        Loader:NewGame("Fallen Survival", "Lite", "http://www.roblox.com/asset/?id=99962944873879")
        Loader:NewGame("Fallen Survival", "Full", "http://www.roblox.com/asset/?id=99962944873879")

        repeat
            task.wait()
        until LoaderLaunched
        repeat
            task.wait()
        until Loader.BeginLoading

        do --// Loading...
            task.wait(1)
            Loader:SetStage("Initializing...")
            Loader:SetProgress(10)
            task.wait(0.2)
            Loader:SetStage("Loading visuals...")
            Loader:SetProgress(40)
            task.wait(1)
            Loader:SetStage("Loading hooks...")
            Loader:SetProgress(80)
            task.wait(1)
            Loader:SetStage("Finalizing...")
            Loader:SetProgress(100)
        end

        task.wait(1)

        do --// Finished loading!
            for Index, Object in Loader.Components.Loader:GetDescendants() do
                Object:SetAttribute("Tweening", true)
                if Object:IsA("TextLabel") then
                    Globals:Tween(Object, TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad), {
                        BackgroundTransparency = 1,
                    })

                    Globals:Tween(Object, TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad), {
                        TextTransparency = 1,
                    })
                end

                if Object:IsA("TextButton") then
                    Globals:Tween(Object, TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad), {
                        BackgroundTransparency = 1,
                    })

                    Globals:Tween(Object, TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad), {
                        TextTransparency = 1,
                    })
                end

                if Object:IsA("ImageLabel") then
                    Globals:Tween(Object, TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad), {
                        BackgroundTransparency = 1,
                    })

                    Globals:Tween(Object, TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad), {
                        ImageTransparency = 1,
                    })
                end

                if Object:IsA("Frame") then
                    Globals:Tween(Object, TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad), {
                        BackgroundTransparency = 1,
                    })
                end

                if Object:IsA("ImageButton") then
                    Globals:Tween(Object, TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad), {
                        BackgroundTransparency = 1,
                    })

                    Globals:Tween(Object, TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad), {
                        ImageTransparency = 1,
                    })
                end

                if Object:IsA("UIStroke") then
                    Globals:Tween(Object, TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad), {
                        Transparency = 1,
                    })
                end
            end
        end

        task.wait(3)
        Loader.Components.Loader:Destroy()
    end;]]

local Window = Library:Window({
	Name = "MainWindow",
	--PlayerImage = "http://www.roblox.com/asset/?id=118959562649521",
})

LPH_JIT_MAX(function() --// UI Setup
	local Pages = {
		Combat = Window:Tab({
			Name = "Combat",
			Image = GetImage("CombatImage"), -- "rbxassetid://7485051715"
		}),

		ESP = Window:Tab({
			Name = "ESP",
			Image = GetImage("ESPImage"), -- "rbxassetid://13321848320"
		}),

		Seperator1 = Window:TabSeperator(),

		Visuals = Window:Tab({
			Name = "Visuals",
			Image = GetImage("VisualsImage"), -- "rbxassetid://18870359747"
		}),

		Misc = Window:Tab({
			Name = "Misc",
			Image = GetImage("MiscImage") -- rbxassetid://6953992690
		}),

		Skins = Window:Tab({
			Name = "Skins",
			Image = GetImage("SkinsImage"), -- rbxassetid://13693164564
		}),

		Seperator2 = Window:TabSeperator(),

		Settings = Window:Tab({
			Name = "Settings",
			Image = GetImage("SettingsImage") -- rbxassetid://11956055886
		}),
		Plugins = Window:Tab({
			Name = "Plugins",
			Image = GetImage("PluginsImage"), -- http://www.roblox.com/asset/?id=133292957761995
		}),
	}

      local PluginsCategories = { 
		Main = Pages.Plugins:Category({
			Name = "Credits Scene"
		}),
	};

	local CombatCategories = {
		Aimbot = Pages.Combat:Category({
			Name = "Main",
		}),

		AntiAim = Pages.Combat:Category({
			Name = "Anti Aim",
		}),

		WeaponMods = Pages.Combat:Category({
			Name = "Weapon Mods",
		}),

		Crosshair = Pages.Combat:Category({
			Name = "Crosshair"
		})
	};

	do  --// COMBAT CAT
		--// Aimbot
		local Aimbot = CombatCategories.Aimbot:Section({
			Name = "Aimbot",
			Side = "Left",
		})

		Aimbot:Toggle({
			Name = "Enabled",
			Flag = "Aimbot",
			Tooltip = "Redirects bullets to targets",
		});

		Aimbot:Dropdown({
			Name = "Mode",
			Flag = "AimbotMode",
			Options = { 
				"Silent",
				"Memory"
			}
		})

		Aimbot:Toggle({
			Name = "Always target",
			Flag = "AlwaysTarget",
			Tooltip = "Ignores aimbot key requirement"
		});

		Aimbot:Toggle({
			Name = "Random hitpart",
			Flag = "RandomizeHitPart"
		});

		Aimbot:Toggle({
			Name = "Visibility check",
			Flag = "VisibleCheck",
			Tooltip = "Prioritizes hitboxes based on visibility"
		});

		Aimbot:Toggle({
			Name = "Manipulation",
			Flag = "Manipulation",
			Tooltip = "Shoot around obstructions"
		})

		Aimbot:Seperator()

		Aimbot:Keybind({
			Name = "Manipulation Key",
			Flag = "Manipulation Activation",
			Mode = "Toggle"
		})

		Aimbot:Keybind({
			Name = "Aimbot key",
			Flag = "Aimbot Activation",
			Mode = "Hold",
		});

		Aimbot:Seperator()

		Aimbot:Toggle({
			Name = "Target Players",
			Flag = "TargetPlayer"
		});

		Aimbot:Toggle({
			Name = "Target AI",
			Flag = "TargetAI",
		});

		Aimbot:Toggle({
			Name = "Target Bosses",
			Flag = "TargetBoss",
		});

		Aimbot:Seperator();

		Aimbot:Slider({
			Name = "Distance",
			Flag = "AimbotDistance",
			Min = 0,
			Max = 1200,
			Suffix = "s",
			Increment = 0.1,
		});

		Aimbot:Dropdown({
			Name = "Hit part",
			Flag = "AimbotPart",
			Options = {
				"Head",
				"LowerTorso",
				"UpperTorso",
			},
		});
		--

		--// Target Settings
		local FOVSettings = CombatCategories.Aimbot:Section({
			Name = "FOV Settings",
			Side = "Right",
		})

		FOVSettings:Toggle({
			Name = "Visualize FOV",
			Flag = "VisualizeFOV",
			Callback = function(v)
				Visuals.FOVOutline.Visible = Library.Flags.VisualizeFOV.Value
			end;
		})

		FOVSettings:Toggle({
			Name = "Dynamic Radius", 
			Flag = "DynamicFOV",
			Tooltip = "Scales radius based on Camera FOV",
		});

		FOVSettings:Slider({
			Name = "Radius",
			Flag = "FOVRadius",
			Suffix = "px",
			Min = 30, 
			Max = 1500,
		});

		FOVSettings:Colorpicker({
			Name = "Color",
			Flag = "FOVColor",
			Default = {Library.Theme.Accent, 0.8},
			Callback = function(v)
				Visuals.FOVCircleStroke.Color = Library.Flags.FOVColor.Value[1]
				Visuals.FOVInline.BackgroundColor3 = Library.Flags.FOVColor.Value[1]
				Visuals.FOVInline.BackgroundTransparency = Library.Flags.FOVColor.Value[2]
			end,
		})

		FOVSettings:Colorpicker({
			Name = "Target color",
			Flag = "TargetColor", 
			Default = {Library.Theme.Accent, 0}
		});

		FOVSettings:Colorpicker({
			Name = "Manipulated color",
			Flag = "ManipColor", 
			Default = {Color3.fromRGB(255, 162, 0), 0}
		})
		--

		--// Armor Viewer Settings 
		local ArmorViewer = CombatCategories.Aimbot:Section({
			Name = "Armor Viewer",
			Side = "Right"
		});

		ArmorViewer:Toggle({
			Name = "Enabled",
			Flag = "ArmorViewer",
			Tooltip = "Displays targets armor",
			Callback = function()
				Window.ArmorPanel.Components.Armor.Visible = Library.Flags.ArmorViewer.Value 
			end;
		})
		--

		--// Gun Mods 
		local ToolInfo = ReplicatedStorage:FindFirstChild("Modules") and ReplicatedStorage.Modules:FindFirstChild("ToolInfo") and require(ReplicatedStorage.Modules.ToolInfo) or {};
		local ToolInfoCopy = Globals.DeepCopy(ToolInfo)

		Globals.ToolInfo = ToolInfo
		local Universal = CombatCategories.WeaponMods:Section({
			Name = "Universal",
			Side = "Left"
		})

		local Guns = CombatCategories.WeaponMods:Section({
			Name = "Guns",
			Side = "Right"
		});

		local Melees = CombatCategories.WeaponMods:Section({
			Name = "Melees",
			Side = "Left"
		})

		--// Universal 
		Universal:Toggle({
			Name = "Instant equip",
			Flag = "FastEquip",
			Callback = LPH_NO_VIRTUALIZE(function()
				for Index, Value in ToolInfo do 
					if type(Value) == "table" and rawget(Value, "Weapon") then 
						local Old = ToolInfoCopy[Index].Weapon;
						Value.Weapon.EquipAnimSpeed = Library.Flags.FastEquip.Value and 6 or Old.EquipAnimSpeed;
					end;
				end;
			end);
		});
		--

		--// Guns
		Guns:Toggle({
			Name = "Remove recoil",
			Flag = "RemoveRecoil"
		});

		Guns:Toggle({
			Name = "Instant bullet",
			Flag = "InstantBullet"
		});

		Guns:Toggle({
			Name = "Force automatic",
			Flag = "ForceAuto",
			Callback = LPH_NO_VIRTUALIZE(function()
				for Index, Value in ToolInfo do 
					if type(Value) == "table" and rawget(Value, "Weapon") and rawget(Value.Weapon, 'RPM') then 
						Value.Weapon.Auto = Library.Flags.ForceAuto.Value and true or ToolInfoCopy[Index].weapon.Auto
					end
				end;
			end);
		})

		Guns:Seperator()

		Guns:Toggle({
			Name = "Instant Bolt",
			Flag = "InstantBolt",
			Risky = true,
			Callback = LPH_NO_VIRTUALIZE(function()
				for Index, Value in ToolInfo do 
					if type(Value) == "table" and rawget(Value, "Weapon") and rawget(Value.Weapon, 'BoltAnimSpeed') then 
						Value.Weapon.ReloadAnimSpeed = Library.Flags.InstantBolt.Value and 10 or ToolInfoCopy[Index].Weapon.ReloadAnimSpeed
						Value.Weapon.BoltAnimSpeed = Library.Flags.InstantBolt.Value and 10 or ToolInfoCopy[Index].Weapon.BoltAnimSpeed
					end
				end;
			end);
		});

		Guns:Seperator()

		Guns:Toggle({
			Name = "Rapid Fire",
			Flag = "RapidFire",
			Risky = true,
			Callback = LPH_NO_VIRTUALIZE(function()
				for Index, Value in ToolInfo do 
					if type(Value) == "table" and rawget(Value, "Weapon") and rawget(Value.Weapon, 'RPM') then 
						Value.Weapon.RPM = Library.Flags.RapidFire.Value and ToolInfoCopy[Index].Weapon.RPM * Library.Flags.RPMMult.Value or ToolInfoCopy[Index].Weapon.RPM
					end
				end;
			end);
		});

		Guns:Slider({
			Name = "RPM Multiplier",
			Flag = "RPMMult",
			Suffix = "x",
			Min = 1, Max = 3, Increment = 0.01,
			Callback = LPH_NO_VIRTUALIZE(function()
				for Index, Value in ToolInfo do 
					if type(Value) == "table" and rawget(Value, "Weapon") and rawget(Value.Weapon, 'RPM') then 
						Value.Weapon.RPM = Library.Flags.RapidFire.Value and ToolInfoCopy[Index].Weapon.RPM * Library.Flags.RPMMult.Value or ToolInfoCopy[Index].Weapon.RPM
					end
				end;
			end);
		});

		Guns:Seperator();

		Guns:Toggle({
			Name = "Faster ADS",
			Flag = "FastADS",
			Callback = LPH_NO_VIRTUALIZE(function()
				local TOGGLE = Library.Flags.FastADS.Value;
				for Index, Value in next, ToolInfo do 
					if type(Value) == "table" and rawget(Value, "Weapon") then 
						local Old = ToolInfoCopy[Index].Weapon;
						if rawget(Value.Weapon, "AimDownSpeed") then 
							Value.Weapon.AimDownSpeed.In = TOGGLE and Old.AimDownSpeed.In - (Old.AimDownSpeed.In * (Library.Flags.AimSpeed.Value / 100)) or Old.AimDownSpeed.In;
							Value.Weapon.AimDownSpeed.Out =TOGGLE and Old.AimDownSpeed.Out - (Old.AimDownSpeed.Out * (Library.Flags.AimSpeed.Value / 100)) or Old.AimDownSpeed.Out;
						end;
					end;    
				end;
			end);
		});

		Guns:Slider({
			Name = "ADS Percent",
			Flag = "AimSpeed",
			Suffix = "%",
			Min = 0, Max = 100,
			Callback = LPH_NO_VIRTUALIZE(function()
				local TOGGLE = Library.Flags.FastADS.Value;
				for Index, Value in next, ToolInfo do 
					if type(Value) == "table" and rawget(Value, "Weapon") then 
						local Old = ToolInfoCopy[Index].Weapon;
						if rawget(Value.Weapon, "AimDownSpeed") then 
							Value.Weapon.AimDownSpeed.In = TOGGLE and Old.AimDownSpeed.In - (Old.AimDownSpeed.In * (Library.Flags.AimSpeed.Value / 100)) or Old.AimDownSpeed.In;
							Value.Weapon.AimDownSpeed.Out = TOGGLE and Old.AimDownSpeed.Out - (Old.AimDownSpeed.Out * (Library.Flags.AimSpeed.Value / 100)) or Old.AimDownSpeed.Out;
						end;
					end;    
				end;
			end);
		});
		--

		--// Melees 
		Melees:Toggle({
			Name = "Reach",
			Flag = "Reach",
			Risky = true
		})

		Melees:Toggle({
			Name = "Perfect farm",
			Flag = "PerfectFarm"
		})

		Melees:Toggle({
			Name = "Fast cooldown",
			Flag = "FastCooldown",
			Callback = LPH_NO_VIRTUALIZE(function()
				for Index, Value in ToolInfo do 
					if type(Value) == "table" and rawget(Value, "Weapon") and rawget(Value.Weapon, 'Cooldown') then 
						Value.Weapon.Cooldown = Library.Flags.FastCooldown.Value and ToolInfoCopy[Index].Weapon.Cooldown * 0.8 or ToolInfoCopy[Index].Weapon.Cooldown
					end
				end;
			end);
		})

            Melees:Toggle({
			Name = "Killaura (Uses Silent Aim Target)",
			Flag = "KillauraToggle"
		})
            Melees:Keybind({
			Name = "Killaura Key",
			Flag = "Killaura Activation",
			Mode = "Toggle"
		})
		--
		--

		--// Anti aim tab 
		local AntiaimMaster = CombatCategories.AntiAim:Section({
			Name = "Master",
			Side = "Left"
		});

		AntiaimMaster:Toggle({
			Name = "Enabled",
			Flag = "AntiAim"
		});

		local YawSection = CombatCategories.AntiAim:Section({
			Name = "Yaw",
			Side = "Right"
		})

		YawSection:Slider({
			Name = "Modifier",
			Flag = "YawModifier",
			Min = 0, Max = 360, Suffix = "°"
		});

		YawSection:Dropdown({
			Name = "Base",
			Flag = "YawBase",
			Options = {"Camera", "Random", "Spin", "Targets"}
		});


		local PitchSection = CombatCategories.AntiAim:Section({
			Name = "Pitch",
			Side = "Left"
		});

		PitchSection:Slider({
			Name = "Modifier",
			Flag = "PitchModifier",
			Min = -1, Max = 1, Increment = 0.1,
		});

		PitchSection:Dropdown({
			Name = "Base",
			Flag = "PitchBase",
			Options = {"Nod", "Up", "Down", "Custom"}
		})
		--

		--// Crosshair settings 
		local CrosshairSettings = CombatCategories.Crosshair:Section({
			Name = "Settings",
			Side = "Left"
		});

		CrosshairSettings:Toggle({
			Name = "Enabled",
			Flag = "Crosshair"
		});

		CrosshairSettings:Toggle({
			Name = "Apply rotation animation",
			Flag = "RotateCrosshair"
		});

		CrosshairSettings:Seperator();
		CrosshairSettings:Slider({
			Name = "Length",
			Flag = "CrosshairLength",
			Min = 3,
			Max = 40,
			Default = 20
		});

		CrosshairSettings:Slider({
			Name = "Width",
			Flag = "CrosshairWidth",
			Min = 2,
			Max = 4,
			Default = 2
		});

		CrosshairSettings:Slider({
			Name = "Gap",
			Flag = "CrosshairGap",
			Min = 1,
			Max = 20,
			Default = 10
		});
		CrosshairSettings:Seperator();
		CrosshairSettings:Colorpicker({
			Name = "Color",
			Flag = "CrosshairColor",
			Default = {Color3.fromRGB(255, 255, 255), 0}
		})
		--

		--// Crosshair Target Settings 
		local CrosshairTargetSettings = CombatCategories.Crosshair:Section({
			Name = "Target Settings",
			Side = "Right"
		});

		CrosshairTargetSettings:Toggle({
			Name = "Stick to target",
			Flag = "StickToTarget",
			Tooltip = "Crosshair will move to targe"
		});

		CrosshairTargetSettings:Toggle({
			Name = "Sync to lock color",
			Flag = "SyncToLockColor",
			Tooltip = "Crosshair will sync with target color if locked"
		})
		--
	end

	local ESPCategories = {
		Players = Pages.ESP:Category({ Name = "Players" }),
		AI = Pages.ESP:Category({ Name = "AI" }),
		Boss = Pages.ESP:Category({ Name = "Bosses" }),
		World = Pages.ESP:Category({ Name = "World" })
	}

	do --// ESP Categories
		do --// Players
			local PlayersMain = ESPCategories.Players:Section({
				Name = "Main",
				Side = "Left",
			})

			local PlayersSettings = ESPCategories.Players:Section({
				Name = "Settings",
				Side = "Left",
			})

			local PlayersColors = ESPCategories.Players:Section({
				Name = "Colors",
				Side = "Right",
			})

			local PlayerModels = ESPCategories.Players:Section({
				Name = "Character model",
				Side = "Right",
			});

			local LockOn = ESPCategories.Players:Section({
				Name = "Lock on indicators",
				Side = "Left"
			})

			do --// Lock on 
				LockOn:Toggle({
					Name = "Enabled",
					Flag = "LockOnIndicator"
				});

				LockOn:Slider({
					Name = "Lock on threshold",
					Flag = "LockOnThreshold",
					Min = 30,
					Max = 90,
					Default = 70
				});

				LockOn:Slider({
					Name = "Lock on danger threshold",
					Flag = "LockOnRisk",
					Min = 30,
					Max = 90,
					Default = 70
				});
			end; 

			do --// Players main
				PlayersMain:Toggle({
					Name = "Enabled",
					Flag = "PlayerESP",
				})

				PlayersMain:Toggle({
					Name = "Bounding box",
					Flag = "PlayerBoundingBox",
				});

				PlayersMain:Toggle({
					Name = "Skeleton",
					Flag = "PlayerSkeleton",
				});

				PlayersMain:Toggle({
					Name = "View angle",
					Flag = "PlayerLookAngle",
				})

				PlayersMain:Toggle({
					Name = "Healthbar",
					Flag = "PlayerHealthbar",
				})

				PlayersMain:Toggle({
					Name = "Name",
					Flag = "PlayerName",
				})

				PlayersMain:Toggle({
					Name = "Distance",
					Flag = "PlayerDistance",
				})

				PlayersMain:Toggle({
					Name = "Item",
					Flag = "PlayerWeapon",
				})

				PlayersMain:Toggle({
					Name = "Health",
					Flag = "PlayerHealth",
					Tooltip = "Displays players health on text",
				})

				PlayersMain:Toggle({
					Name = "Weapon image",
					Flag = "PlayerWeaponImage",
					Tooltip = "2d icon of held weapon",
				})

				PlayersMain:Toggle({
					Name = "Flags",
					Flag = "PlayerFlags",
					Tooltip = "Flag certain actions/attributes",
				})

				PlayersMain:Dropdown({
					Multi = true,
					Name = "Selected flags",
					Flag = "PlayerFlagsList",
					Options = {
						"Aiming",
						"Reloading",
						"Healing",
						"Clan",
						"VIP",
						"Staff",
					},
				})

				PlayersMain:Toggle({
					Name = "Offscreen indicators",
					Flag = "PlayerOffscreen",
				});
			end

			do --// Players settings
				PlayersSettings:Toggle({
					Name = "Ignore friends",
					Flag = "IgnoreFriends",
					Tooltip = "Doesn't render in players marked as friendly",
				})

				PlayersSettings:Dropdown({
					Name = "Bounding box type",
					Flag = "PlayerBoxStyle",
					Options = {
						"Solid",
						"Corner",
					},
				})

				PlayersSettings:Toggle({
					Name = "Only show health if damaged",
					Flag = "PlayerShowHealthIfDamaged",
				})

				PlayersSettings:Slider({
					Name = "Maximum distance",
					Flag = "PlayerMaxDistance",
					Min = 100,
					Max = 1300,
					Suffix = "studs",
				})

				PlayersSettings:Slider({
					Name = "Offscreen arrow size",
					Flag = "PlayerOffscreenSize",
					Min = 10,
					Max = 30,
					Increment = 0.1,
				})

				PlayersSettings:Slider({
					Name = "Offscreen arrow radius",
					Flag = "PlayerOffscreenRadius",
					Min = 100,
					Max = 700,
					Increment = 0.1,
				})
			end

			do --// Players colors
				PlayersColors:Colorpicker({
					Name = "Visible color",
					Flag = "PlayerVisibleColor",
					Default = { Color3.fromRGB(255, 0, 0), 0 },
				})

				PlayersColors:Colorpicker({
					Name = "Occluded color",
					Flag = "PlayerOccludedColor",
					Default = { Color3.fromRGB(255, 255, 255), 0 },
				});

				PlayersColors:Colorpicker({
					Name = "Higher health color",
					Flag = "PlayerHigherHealthColor",
					Default = {Color3.fromRGB(120, 255, 100), 0}
				})

				PlayersColors:Colorpicker({
					Name = "Lower health color",
					Flag = "PlayerLowerHealthColor",
					Default = {Color3.fromRGB(255, 0, 0), 0}
				});

				PlayersColors:Seperator();
				PlayersColors:Colorpicker({
					Name = "Aiming flag color",
					Flag = "AimingFlagColor",
					Default = {Color3.fromRGB(3, 169, 252), 0}
				});

				PlayersColors:Colorpicker({
					Name = "Reloading flag color",
					Flag = "ReloadingFlagColor",
					Default = {Color3.fromRGB(255, 255, 255), 0}
				});

				PlayersColors:Colorpicker({
					Name = "Healing flag color",
					Flag = "HealingFlagColor",
					Default = {Color3.fromRGB(120, 255, 100), 0}
				});

				PlayersColors:Colorpicker({
					Name = "VIP flag color",
					Flag = "VIPFlagColor",
					Default = {Color3.fromRGB(252, 211, 3), 0}
				});

				PlayersColors:Colorpicker({
					Name = "Safezone flag color",
					Flag = "SafezoneFlagColor",
					Default = {Color3.fromRGB(0, 211, 0), 0}
				});

				PlayersColors:Colorpicker({
					Name = "Clan flag color",
					Flag = "ClanFlagColor",
					Default = {Color3.fromRGB(255, 255, 255), 0}
				});

				PlayersColors:Colorpicker({
					Name = "Staff flag color",
					Flag = "StaffFlagColor",
					Default = {Color3.fromRGB(255, 255, 255), 0}
				});
			end

			do --// Player models
				PlayerModels:Toggle({
					Name = "Chams",
					Flag = "PlayerChams",
				});

				PlayerModels:Dropdown({
					Name = "Chams style",
					Flag = "PlayerChamsStyle",
					Options = { 
						"Solid",
						"Glow"
					}
				})


				PlayerModels:Colorpicker({
					Name = "Chams visible color",
					Flag = "PlayerChamsVisibleColor",
					Default = { Library.Theme.Accent, 0.2 },
				})

				PlayerModels:Colorpicker({
					Name = "Chams occluded color",
					Flag = "PlayerChamsOccludedColor",
					Default = { Library.Theme.Accent, 0.8 },
				})

				PlayerModels:Seperator()

				PlayerModels:Toggle({
					Name = "Sandbox armor models",
					Flag = "SandboxPlayer",
				})

				PlayerModels:Dropdown({
					Name = "Material",
					Flag = "PlayerArmorMaterial",
					Options = {
						"ForceField",
						"Neon",
						"SmoothPlastic",
						"Plastic",
						"Glass",
					},
				})

				PlayerModels:Slider({
					Name = "Reflectance",
					Flag = "PlayerArmorReflectance",
					Min = 0, Max = 1, Increment = 0.001
				});

				PlayerModels:Slider({ 
					Name = "Reflectance multiplier",
					Flag = "PlayerArmorReflectanceMul",
					Min = 0, Max = 100
				})

				PlayerModels:Colorpicker({
					Name = "Color",
					Flag = "PlayerArmorColor",
					Default = { Library.Theme.Accent, 0.2 },
				})
			end
		end

		do --// AI
			local AIMain = ESPCategories.AI:Section({
				Name = "Main",
				Side = "Left",
			})

			local AISettings = ESPCategories.AI:Section({
				Name = "Settings",
				Side = "Left",
			})

			local AIColors = ESPCategories.AI:Section({
				Name = "Colors",
				Side = "Right",
			})

			local AIModels = ESPCategories.AI:Section({
				Name = "Character model",
				Side = "Right",
			});

			do --// AIs main
				AIMain:Toggle({
					Name = "Enabled",
					Flag = "AIESP",
				})

				AIMain:Toggle({
					Name = "Bounding box",
					Flag = "AIBoundingBox",
				});

				AIMain:Toggle({
					Name = "Skeleton",
					Flag = "AISkeleton",
				});

				AIMain:Toggle({
					Name = "View angle",
					Flag = "AILookAngle",
				})

				AIMain:Toggle({
					Name = "Healthbar",
					Flag = "AIHealthbar",
				})

				AIMain:Toggle({
					Name = "Name",
					Flag = "AIName",
				})

				AIMain:Toggle({
					Name = "Distance",
					Flag = "AIDistance",
				})

				AIMain:Toggle({
					Name = "Health",
					Flag = "AIHealth",
					Tooltip = "Displays AIs health on text",
				})
			end

			do --// AIs settings
				AISettings:Dropdown({
					Name = "Bounding box type",
					Flag = "AIBoxStyle",
					Options = {
						"Solid",
						"Corner",
					},
				})

				AISettings:Toggle({
					Name = "Only show health if damaged",
					Flag = "AIShowHealthIfDamaged",
				})

				AISettings:Slider({
					Name = "Maximum distance",
					Flag = "AIMaxDistance",
					Min = 100,
					Max = 1300,
					Suffix = "studs",
				})
			end

			do --// AIs colors
				AIColors:Colorpicker({
					Name = "Visible color",
					Flag = "AIVisibleColor",
					Default = { Color3.fromRGB(255, 0, 0), 0 },
				})

				AIColors:Colorpicker({
					Name = "Occluded color",
					Flag = "AIOccludedColor",
					Default = { Color3.fromRGB(255, 255, 255), 0 },
				});

				AIColors:Colorpicker({
					Name = "Higher health color",
					Flag = "AIHigherHealthColor",
					Default = {Color3.fromRGB(120, 255, 100), 0}
				})

				AIColors:Colorpicker({
					Name = "Lower health color",
					Flag = "AILowerHealthColor",
					Default = {Color3.fromRGB(255, 0, 0), 0}
				});
			end

			do --// AI models

				AIModels:Toggle({
					Name = "Chams",
					Flag = "AIChams",
				});

				AIModels:Dropdown({
					Name = "Chams style",
					Flag = "AIChamsStyle",
					Options = { 
						"Solid",
						"Glow"
					}
				})

				AIModels:Colorpicker({
					Name = "Chams visible color",
					Flag = "AIChamsVisibleColor",
					Default = { Library.Theme.Accent, 0.2 },
				})

				AIModels:Colorpicker({
					Name = "Chams occluded color",
					Flag = "AIChamsOccludedColor",
					Default = { Library.Theme.Accent, 0.8 },
				})
			end
		end

		do --// Bosses
			local BossMain = ESPCategories.Boss:Section({
				Name = "Main",
				Side = "Left",
			})

			local BossSettings = ESPCategories.Boss:Section({
				Name = "Settings",
				Side = "Left",
			})

			local BossColors = ESPCategories.Boss:Section({
				Name = "Colors",
				Side = "Right",
			})

			local BossModels = ESPCategories.Boss:Section({
				Name = "Character model",
				Side = "Right",
			});

			do --// Boss main
				BossMain:Toggle({
					Name = "Enabled",
					Flag = "BossESP",
				})

				BossMain:Toggle({
					Name = "Bounding box",
					Flag = "BossBoundingBox",
				});

				BossMain:Toggle({
					Name = "Skeleton",
					Flag = "BossSkeleton",
				});

				BossMain:Toggle({
					Name = "View angle",
					Flag = "BossLookAngle",
				})

				BossMain:Toggle({
					Name = "Healthbar",
					Flag = "BossHealthbar",
				})

				BossMain:Toggle({
					Name = "Name",
					Flag = "BossName",
				})

				BossMain:Toggle({
					Name = "Distance",
					Flag = "BossDistance",
				})

				BossMain:Toggle({
					Name = "Health",
					Flag = "BossHealth",
					Tooltip = "Displays Bosses health on text",
				})
			end

			do --// Boss settings
				BossSettings:Dropdown({
					Name = "Bounding box type",
					Flag = "BossBoxStyle",
					Options = {
						"Solid",
						"Corner",
					},
				})

				BossSettings:Toggle({
					Name = "Only show health if damaged",
					Flag = "BossShowHealthIfDamaged",
				})

				BossSettings:Slider({
					Name = "Maximum distance",
					Flag = "BossMaxDistance",
					Min = 100,
					Max = 1300,
					Suffix = "studs",
				})
			end

			do --// Boss colors
				BossColors:Colorpicker({
					Name = "Visible color",
					Flag = "BossVisibleColor",
					Default = { Color3.fromRGB(255, 0, 0), 0 },
				})

				BossColors:Colorpicker({
					Name = "Occluded color",
					Flag = "BossOccludedColor",
					Default = { Color3.fromRGB(255, 255, 255), 0 },
				});

				BossColors:Colorpicker({
					Name = "Higher health color",
					Flag = "BossHigherHealthColor",
					Default = {Color3.fromRGB(120, 255, 100), 0}
				})

				BossColors:Colorpicker({
					Name = "Lower health color",
					Flag = "BossLowerHealthColor",
					Default = {Color3.fromRGB(255, 0, 0), 0}
				});
			end

			do --// Boss models

				BossModels:Toggle({
					Name = "Chams",
					Flag = "BossChams",
				});

				BossModels:Dropdown({
					Name = "Chams style",
					Flag = "BossChamsStyle",
					Options = { 
						"Solid",
						"Glow"
					}
				})

				BossModels:Colorpicker({
					Name = "Chams visible color",
					Flag = "BossChamsVisibleColor",
					Default = { Library.Theme.Accent, 0.2 },
				})

				BossModels:Colorpicker({
					Name = "Chams occluded color",
					Flag = "BossChamsOccludedColor",
					Default = { Library.Theme.Accent, 0.8 },
				})
			end
		end

		do --// World 
			--// Global
			local Global = ESPCategories.World:Section({
				Name = "Global settings",
				Side = "Left"
			});

			Global:Keybind({
				Name = "Combat Hide",
				Flag = "CombatHide",
				Mode = "Toggle"
			});

			Global:Toggle({
				Name = "Smart ESP Fade",
				Tooltip = "Fades objects not in center",
				Flag = "SmartESP"
			});

			Global:Slider({
				Name = "Smart ESP Radius",
				Flag = "FadeRadius",
				Min = 0,
				Max = 1000,
			});

                    --[[Global:Colorpicker({
                        Name = "Distance color",
                        Flag = "ESPMiscDistanceColor",
                        Default = {Color3.fromRGB(255, 255, 255), 0}
                    })]]
			--

			--// Wool
			local Wool = ESPCategories.World:Section({
				Side = "Left",
				Name = "Cloth plants"
			});

			Wool:Toggle({
				Name = "Enabled",
				Flag = "ESPWoolPlants"
			});

			Wool:Colorpicker({
				Name = "Color",
				Flag = "WoolPlantsMiscColor",
				Default = {Color3.fromRGB(25, 107, 0), 1}
			});

			Wool:Slider({
				Min = 10, Max = 1000,
				Suffix = "s",
				Name = "Distance",
				Flag = "WoolPlantsDistance"
			});
			--

			--// Nodes
			local Nodes = ESPCategories.World:Section({
				Side = "Right",
				Name = "Nodes"
			});

			Nodes:Toggle({
				Name = "Enabled",
				Flag = "ESPNodes"
			});

			Nodes:Seperator()

			Nodes:Toggle({
				Name = "Stone",
				Flag = "Stone nodeCanShow"
			});

			Nodes:Colorpicker({
				Name = "Stone color",
				Flag = "Stone nodeColor",
				Default = {Color3.fromRGB(255, 255, 255), 1}
			});

			Nodes:Seperator()

			Nodes:Toggle({
				Name = "Metal",
				Flag = "Metal nodeCanShow"
			})

			Nodes:Colorpicker({
				Name = "Metal color",
				Flag = "Metal nodeColor",
				Default = {Color3.fromRGB(214, 135, 153), 1}
			});

			Nodes:Seperator()

			Nodes:Toggle({
				Name = "Phosphate",
				Flag = "Phosphate nodeCanShow"
			});

			Nodes:Colorpicker({
				Name = "Phosphate color",
				Flag = "Phosphate nodeColor",
				Default = {Color3.fromRGB(237, 193, 104), 1}
			});

			Nodes:Seperator()

			Nodes:Slider({
				Min = 10, Max = 1000,
				Suffix = "s",
				Name = "Distance",
				Flag = "NodesDistance"
			});
			--

			--// Body bags
			local Bodybags = ESPCategories.World:Section({
				Name = "Body bags",
				Side = "Left"
			});

			Bodybags:Toggle({
				Name = "Enabled",
				Flag = "ESPBodyBags",
				Default = {Color3.fromRGB(244, 80, 40), 0}
			});

			Bodybags:Colorpicker({
				Name = "Color",
				Flag = "BodyBagsMiscColor",
				Default = {Color3.fromRGB(255, 255, 255), 0}
			})
			Bodybags:Slider({
				Name ="Distance",
				Flag = "BodyBagsDistance",
				Min = 50, Max = 1000, Suffix = "s"
			});
			--

			--// Dropped items 
			local Items = ESPCategories.World:Section({
				Name = "Items",
				Side = "Right"
			});

			Items:Toggle({
				Name = "Enabled",
				Flag = "ESPItems"
			});

			Items:Seperator();

			Items:Toggle({
				Name = "Guns",
				Flag = "IncludeGun"
			});

			Items:Toggle({
				Name = "Consumable ammo",
				Flag = "IncludeConsumableAmmo"
			});

			Items:Toggle({
				Name = "Consumable armor",
				Flag = "IncludeConsumableAmmoArmor",
			});

			Items:Toggle({
				Name = "Ammo",
				Flag = "IncludeAmmo"
			});

			Items:Toggle({
				Name = "Armor",
				Flag = "IncludeArmor"
			});

			Items:Toggle({
				Name = "Tools",
				Flag = "IncludeTool"
			});

			Items:Toggle({
				Name = "Locks",
				Flag = "IncludeLock"
			});

			Items:Toggle({
				Name = "Benches",
				Flag = "IncludeBench"
			});

			Items:Toggle({
				Name = "Resources",
				Flag = "IncludeResource"
			});

			Items:Toggle({
				Name = "Components / Misc",
				Flag = "IncludeMisc"
			})

			Items:Toggle({
				Name = "Attachments",
				Flag = "IncludeAttachment"
			});

			Items:Toggle({
				Name = "Consumables",
				Flag = "IncludeConsumable"
			});

			Items:Seperator();

			Items:Colorpicker({
				Name = "Color", Flag = "ItemsColor"
			});

			Items:Slider({Name = "Distance", Flag = "ItemsDistance", Min = 50, Max = 1000, Suffix = "s"})
			--

			--// Raids 
			local Raids = ESPCategories.World:Section({Name = "Raids", Side = "Right"});
			Raids:Toggle({
				Name = "Enabled",
				Flag = "ESPRaids"
			});

			Raids:Colorpicker({
				Name = "Color",
				Flag = "RaidsMiscColor",
				Default = {
					Color3.fromRGB(255, 0, 102),
					0
				}
			})

			Raids:Slider({
				Name = "Distance",
				Flag = "RaidsDistance",
				Min = 50, Max = 10000, Suffix = "s"
			});

			Raids:Seperator()
			Raids:Toggle({
				Name = "Notifications",
				Flag = "RaidNotifications",
				Tooltip = "Notifies you when a raid starts"
			});
			-- 

			--// Timed Crates
			local TimedCrates = ESPCategories.World:Section({Name = "Timed Crates", Side = "Left"});
			TimedCrates:Toggle({
				Name = "Enabled",
				Flag = "ESPTimedCrates"
			});

			TimedCrates:Colorpicker({
				Flag = "TimedCratesMiscColor",
				Default = {
					Color3.fromRGB(0, 122, 8),
					0
				},
				Name = "Color"
			});

			TimedCrates:Slider({
				Name = "Distance",
				Flag = "TimedCratesDistance",
				Min = 50, Max = 1000, Suffix = "s"
			})
			--

			--// Care Packages 
			local CarePackages = ESPCategories.World:Section({
				Name = "Care Packages",
				Side = "Right"
			});

			CarePackages:Toggle({
				Name = "Enabled",
				Flag = "ESPCarePackages",
			});

			CarePackages:Colorpicker({
				Name = "Color",
				Flag = "CarePackagesMiscColor",
				Default = {
					Color3.fromRGB(0, 244, 8),
					0
				}
			});

			CarePackages:Slider({
				Name = "Distance",
				Flag = "CarePackagesDistance",
				Min = 50, Max = 10000, Suffix = "s"
			})
			--

			--// Sleepers
			local Sleepers = ESPCategories.World:Section({
				Name = "Sleepers",
				Side = "Right"
			});

			Sleepers:Toggle({
				Name = "Enabled",
				Flag = "ESPSleepers"
			});

			Sleepers:Colorpicker({
				Name = "Color",
				Flag = "SleepersMiscColor",
			})

			Sleepers:Slider({
				Name = "Distance",
				Flag = "SleepersDistance",
				Min = 50, Max = 1000, Suffix = "s"
			})
			--
		end;
	end

	local VisualsCategories = {
		Camera = Pages.Visuals:Category({ Name = "Camera"}),
		World = Pages.Visuals:Category({ Name = "World"}),
		Viewmodel = Pages.Visuals:Category({ Name = "Viewmodel "});
	};

	--// Visuals Categories 
	--// Camera
	local CamEffects = VisualsCategories.Camera:Section({
		Name = "Camera Effects",
		Side = "Left"
	});

	local DebugCamera = VisualsCategories.Camera:Section({
		Name = "Debug Camera",
		Side = "Right"
	})

	local ThirdPerson = VisualsCategories.Camera:Section({
		Name = "Third person",
		Side = "Right"
	});

	--// Third person 
	ThirdPerson:Toggle({
		Name = "Enabled",
		Flag = "ThirdPerson",
		Tooltip = "WARNING: Can cause invalids"
	})

	ThirdPerson:Keybind({
		Name = "Third Person Key",
		Flag = "Third Person Activation",
		Mode = "Toggle",
		Callback = function()
			local Viewmodel = Workspace.VFX.VMs:GetChildren()[1];
			local ThirdPerson = Library.Flags.ThirdPerson.Value and Library.Flags["Third Person Activation"].Active
			if Viewmodel then 
				if ThirdPerson then 
					for Index, Part in Viewmodel:GetDescendants() do 
						if Part:IsA("Part") or Part:IsA("MeshPart") then 
							if Part.Transparency ~= 1 then 
								Part:SetAttribute("OriginalTransparency", Part.Transparency)
							end;
							Part.Transparency = 1;
						end;
					end;
				else 
					for Index, Part in Viewmodel:GetDescendants() do 
						if Part:IsA("Part") or Part:IsA("MeshPart") then 
							if Part:GetAttribute("OriginalTransparency") then 
								Part.Transparency = Part:GetAttribute("OriginalTransparency")
							end;
						end;
					end;
				end;
			end;
		end;
	})

	ThirdPerson:Slider({
		Name = "Distance",
		Flag = "ThirdPersonDistance",
		Min = 0, Max = 20, 
		Increment = 0.1,
	})
	--

	--// Cam Effects
	CamEffects:Toggle({
		Name = "Remove bobbing",
		Flag = "RemoveCameraBobbing"
	});

	CamEffects:Seperator();

	CamEffects:Toggle({
		Name = "Custom field of view",
		Flag = "ChangeFOV",
		Callback = function()
			if Library.Flags.ChangeFOV.Value then 
				Camera.FieldOfView = Library.Flags.CustomFOV.Value 
			end;
		end;
	});

	local MaximumFOV = 120
	CamEffects:Slider({
		Name = "Field of view",
		Suffix = "°",
		Flag = "CustomFOV",
		Min = 70, Max = MaximumFOV,
		Callback = function()
			if Library.Flags.ChangeFOV.Value then 
				Camera.FieldOfView = Library.Flags.CustomFOV.Value 
			end;
		end;
	});

	CamEffects:Seperator();

	CamEffects:Toggle({
		Name = "Zoom",
		Flag = "Zoom"
	});

	CamEffects:Slider({
		Name = "Zoom level",
		Suffix = "°",
		Flag = "ZoomFOV",
		Min = 10, Max = 40
	});

	CamEffects:Keybind({
		Name = "Zoom key",
		Flag = "Zoom Activation",
		Mode = "Hold",
		Callback = function()
			if Library.Flags["Zoom"].Value and Library.Flags["Zoom Activation"].Active then 
				Camera.FieldOfView = Library.Flags.ZoomFOV.Value 
			end;
		end;
	})
	--

	--// Debug Camera 
	DebugCamera:Toggle({
		Name = "Enabled",
		Flag = "DebugCamera"
	})

	DebugCamera:Keybind({
		Name = "Debug Camera Key",
		Flag = "Debug Camera Activation",
		Mode = "Toggle"
	})

	DebugCamera:Slider({
		Name = "Speed",
		Flag = "DebugCameraSpeed",
		Min = 1, Max = 300, Increment = 0.1
	})
	--
	--

	--// World 
	local LightingSection = VisualsCategories.World:Section({
		Name = "Lighting",
		Side = "Left"
	});

	local BaseSection = VisualsCategories.World:Section({
		Name = "Bases",
		Side = "Right"
	}); 

	local Hitmarkers = VisualsCategories.World:Section({
		Name = "Hitmarkers",
		Side = "Left"
	});

	local Tracers = VisualsCategories.World:Section({
		Name = "Tracers",
		Side = "Right"
	});

	local TerrainSection = VisualsCategories.World:Section({
		Name = "Terrain",
		Side = "Left"
	});

	local CloudsSection = VisualsCategories.World:Section({
		Name = "Clouds",
		Side = "Right"
	})

	local FogSection = VisualsCategories.World:Section({
		Name = "Fog",
		Side = "Left"
	});

	local BloomSection = VisualsCategories.World:Section({
		Name = "Bloom",
		Side = "Right"
	});

	--// Bloom Section 
	local Bloom = Lighting:FindFirstChildOfClass("BloomEffect") or Globals:Instance("BloomEffect", {
		Parent = Lighting,
		Enabled = false
	});

	BloomSection:Toggle({
		Name = "Enabled",
		Flag = "Bloom",
		Callback = function() 
			Bloom.Enabled = Library.Flags.Bloom.Value 
		end
	});

	BloomSection:Slider({
		Name = "Intensity",
		Flag = "BloomIntensity",
		Min = 0, Max = 5,
		Increment = 0.1,
		Callback = function()
			Bloom.Intensity = Library.Flags.BloomIntensity.Value
		end;
	})

	BloomSection:Slider({
		Name = "Threshold",
		Flag = "BloomThreshold",
		Min = 0, Max = 1,
		Increment = 0.1,
		Callback = function()
			Bloom.Intensity = Library.Flags.BloomThreshold.Value
		end;
	})

	BloomSection:Slider({
		Name = "Size",
		Flag = "BloomSize",
		Min = 0, Max = 50,
		Increment = 0.1,
		Callback = function()
			Bloom.Size = Library.Flags.BloomSize.Value
		end;
	});
	--

	--// Tracers Section
	Tracers:Toggle({
		Name = "Enabled",
		Flag = "BulletTracers"
	});

	Tracers:Toggle({
		Name = "Show enemy tracers",
		Flag = "ShowEnemyTracers"
	});

	Tracers:Seperator()

	Tracers:Colorpicker({
		Name = "Client tracer color",
		Flag = "TracerColor", Default = {Library.Theme.Accent, 0}
	});

	Tracers:Colorpicker({
		Name = "Enemy tracer color",
		Flag = "EnemyTracerColor", Default = {Color3.fromRGB(255, 0, 0), 0}
	});

	Tracers:Seperator()

	Tracers:Slider({
		Name = "Brigtness",
		Min = 1, Max = 10,
		Flag = "TracerBrightness"
	});

	Tracers:Slider({
		Name = "Lifetime",
		Flag = "TracerLifetime",
		Min = 1, Max = 5, Increment = 0.1
	});

	Tracers:Slider({
		Name = "Speed",
		Flag = "ReferenceTime",
		Min = 50, Max = 300, Default = 250
	});

	Tracers:Seperator()
	--                        BulletTracers:AddDropdown("Texture", "BeamTexture", {"Default", "Lightning", "Dark"});
	Tracers:Dropdown({Name = "Texture", Flag = "BeamTexture", Options = {"Default", "Lightning", "Dark"}})
	--, TracerBrightness, BeamTexture, TracerLifetime, ReferenceTime, 
	--

	--// Hitmarkers Section 
	--HitmarkerColor, HitmarkerSize, HitmarkerTime
	Hitmarkers:Toggle({
		Name = "Enabled",
		Flag = "Hitmarkers",
	});

	Hitmarkers:Toggle({
		Name = "Prioritize hitmarker visibility",
		Flag = "PrioritizeHitmarkers"
	})

	Hitmarkers:Toggle({
		Name = "Apply random rotation",
		Flag = "HitmarkerRandomRotation"
	})

	Hitmarkers:Colorpicker({
		Name = "Color",
		Flag = "HitmarkerColor"
	});

	Hitmarkers:Slider({
		Name = "Size",
		Flag = "HitmarkerSize",
		Min = 10, Max = 20
	});

	Hitmarkers:Slider({
		Name = "Lifetime",
		Flag = "HitmarkerTime",
		Min = 0.1, Max = 3, Increment = 0.1;
	})
	--

	--// Clouds Section
	if Workspace.Terrain:FindFirstChild("Clouds") then 
		local OldDensity = Workspace.Terrain.Clouds.Density; 
		local OldCover = Workspace.Terrain.Clouds.Cover; 
		local OldCloudColor = Workspace.Terrain.Clouds.Color

		local function CloudCallback()
			Workspace.Terrain.Clouds.Density = Library.Flags.ChangeCloudDensity.Value and Library.Flags.CloudDensity.Value or OldDensity
			Workspace.Terrain.Clouds.Cover = Library.Flags.ChangeCloudCover.Value and Library.Flags.CloudCover.Value or OldCover
			Workspace.Terrain.Clouds.Color = Library.Flags.ChangeCloudColor.Value and Library.Flags.CloudColor.Value[1] or OldloudColor;
		end;

		CloudsSection:Toggle({
			Name = "Change cloud density",
			Flag = "ChangeCloudDensity",
			Callback = CloudCallback
		});

		CloudsSection:Slider({
			Name = "Density",
			Flag = "CloudDensity",
			Min = 0, Max = 1, Increment = 0.001,
			Callback = CloudCallback
		});

		CloudsSection:Seperator()

		CloudsSection:Toggle({
			Name = "Change cloud cover",
			Flag = "ChangeCloudCover",
			Callback = CloudCallback
		});

		CloudsSection:Slider({
			Name = "Density",
			Flag = "CloudCover",
			Min = 0, Max = 1, Increment = 0.001,
			Callback = CloudCallback
		});

		CloudsSection:Seperator()

		CloudsSection:Toggle({
			Name = "Change cloud color",
			Flag = "ChangeCloudColor",
			Callback = CloudCallback
		});

		CloudsSection:Colorpicker({
			Name = "Color",
			Flag = "CloudColor",
			Callback = CloudCallback;
		})
	end
	--

	--// Fog Section
	local Atmosphere = Lighting:FindFirstChild("Atmosphere");

	if Atmosphere then 
		local OldFogDensity = Atmosphere.Density; 
		local OldFogColor = Atmosphere.Color; 
		local OldFogHaze = Atmosphere.Haze 
		local OldFogGlare = Atmosphere.Glare 
		local OldFogDecay = Atmosphere.Decay; 

		local function FogCallback() 
			Atmosphere.Density = Library.Flags.ChangeFogDensity.Value and Library.Flags.FogDensity.Value or OldFogDensity
			Atmosphere.Color = Library.Flags.ChangeFogColor.Value and Library.Flags.FogColor.Value[1] or OldFogColor 
			Atmosphere.Decay = Library.Flags.ChangeFogDecay.Value and Library.Flags.DecayColor.Value[1] or OldFogDecay
			Atmosphere.Glare = Library.Flags.ChangeFogGlare.Value and Library.Flags.FogGlare.Value or OldFogGlare 
			Atmosphere.Haze = Library.Flags.ChangeFogHaze.Value and Library.Flags.FogHaze.Value or OldFogHaze 
		end;

		FogSection:Toggle({
			Name = "Change fog density",
			Flag = "ChangeFogDensity",
			Callback = FogCallback
		});

		FogSection:Slider({
			Name = "Density",
			Flag = "FogDensity",
			Min = 0, Max = 1, Increment = 0.001,
			Callback = FogCallback
		});
		--
		FogSection:Seperator()
		--
		FogSection:Toggle({
			Name = "Change fog haze",
			Flag = "ChangeFogHaze",
			Callback = FogCallback
		});

		FogSection:Slider({
			Name = "Haze",
			Min = 0, Max = 1, Increment = 0.001, Callback = FogCallback, Flag = "FogHaze"
		});
		--
		FogSection:Seperator()
		--
		FogSection:Toggle({
			Name = "Change fog glare",
			Flag = "ChangeFogGlare",
			Callback = FogCallback
		});

		FogSection:Slider({
			Name = "Glare",
			Min = 0, Max = 1, Increment = 0.001, Callback = FogCallback, Flag = "FogGlare"
		});

		FogSection:Toggle({
			Name = "Change fog color",
			Flag = "ChangeFogColor",
			Callback = FogCallback
		});

		FogSection:Colorpicker({
			Name = "Color",
			Flag = "FogColor",
			Callback = FogCallback
		})
		--
		FogSection:Seperator()
		--
		FogSection:Toggle({
			Name = "Change fog decay",
			Flag = "ChangeFogDecay",
			Callback = FogCallback
		});

		FogSection:Colorpicker({
			Name = "Decay",
			Flag = "FogDecay",
			Callback = FogCallback
		});
	end
	--

	--// Lighting Section
                    --[[
                        Lighting:GetPropertyChangedSignal("Ambient"):Connect(LPH_NO_VIRTUALIZE(function()
                            if Library.Flags.Ambient.Value then 
                                Lighting.Ambient = Library.Flags.AmbientColor.Value[1]
                            end
                        end))

                        Lighting:GetPropertyChangedSignal("OutdoorAmbient"):Connect(LPH_NO_VIRTUALIZE(function()
                            if Library.Flags.Ambient.Value then 
                                Lighting.OutdoorAmbient = Library.Flags["AmbientColor"].Value[1]
                            end
                        end))

                        Lighting:GetPropertyChangedSignal("ClockTime"):Connect(LPH_NO_VIRTUALIZE(function()
                            if Library.Flags.ChangeTime.Value then 
                                Lighting.ClockTime = Library.Flags.Time.Value 
                            end;
                        end))
                    ]]

	local BrightnessCallback = LPH_NO_VIRTUALIZE(function() 
		if Library.Flags.Fullbright.Value then 
			Lighting.Brightness = Library.Flags.Brightness.Value;
		end;
	end);

	local AmbientCallback = LPH_NO_VIRTUALIZE(function() 
		if Library.Flags.Ambient.Value then 
			Lighting.OutdoorAmbient = Library.Flags["AmbientColor"].Value[1]
			Lighting.Ambient = Library.Flags["AmbientColor"].Value[1]
		end;
	end);

	local TimeCallback = LPH_NO_VIRTUALIZE(function() 
		if Library.Flags.ChangeTime.Value then 
			Lighting.ClockTime = Library.Flags.Time.Value 
		end;
	end);

	LightingSection:Toggle({Name = "Fullbright", Flag = "Fullbright", Callback = BrightnessCallback});
	LightingSection:Slider({Name = "Brightness", Flag = "Brightness", Min = 2, Max = 6, Increment = 0.1, Callback = BrightnessCallback})
	LightingSection:Seperator()
	LightingSection:Toggle({Name = "Ambience", Flag = "Ambient", Callback = AmbientCallback});
	LightingSection:Colorpicker({Name = "Ambient color", Flag = "AmbientColor", Default = {Library.Theme.Accent, 0.1}, Callback = AmbientCallback});

	LightingSection:Seperator()
	LightingSection:Toggle({Name = "Change time", Flag = "ChangeTime", Callback = TimeCallback})
	LightingSection:Slider({Name = "Time", Flag = "Time", Min = 0, Max = 14, Increment = 0.1, Callback = TimeCallback})
	--

	--// Base Section
	BaseSection:Toggle({
		Name = "XRay",
		Flag = "XRay",
	})

	BaseSection:Keybind({
		Name = "XRay Key",
		Flag = "XRay Activation",
		Callback = LPH_NO_VIRTUALIZE(function()
			for Index, Part in next, Globals.XRayParts do 
				if Library.Flags.XRay.Value and Library.Flags["XRay Activation"].Active  then 
					Part.Transparency = Library.Flags.XRayTransparency.Value;
				else 
					Part.Transparency = 0;
				end;
			end;
		end)
	});

	BaseSection:Slider({
		Name = "XRay transparency",
		Flag = "XRayTransparency",
		Min = 0, Max = 1, Increment = 0.1, Default = 0.5
	})
	--

	--// Terrain Section
	TerrainSection:Toggle({
		Name = "Remove grass",
		Flag = "RemoveGrass",
		Callback = function()
			sethiddenproperty(Workspace.Terrain, "Decoration", not Library.Flags.RemoveGrass.Value);
		end
	})
	--
	--

	--// Viewmodel
	local ViewmodelMaster = VisualsCategories.Viewmodel:Section({
		Name = "Master",
		Side = "Left"
	})

	ViewmodelMaster:Toggle({
		Name = "Enabled",
		Flag = "ViewmodelSandbox"
	});

	local Items = VisualsCategories.Viewmodel:Section({
		Name = "Items",
		Side = "Right"
	});

	local Arms = VisualsCategories.Viewmodel:Section({
		Name = "Arms",
		Side = "Left"
	})

	local Gloves = VisualsCategories.Viewmodel:Section({
		Name = "Gloves",
		Side = "Left"
	});

	local Sleeves = VisualsCategories.Viewmodel:Section({
		Name = "Sleeves",
		Side = "Right"
	});

	local Highlight = VisualsCategories.Viewmodel:Section({
		Name = "Highlight",
		Side = "Left"
	})

	--// Items
	Items:Toggle({
		Name = "Enabled",
		Flag = "ItemChams"
	});

	Items:Toggle({
		Name = "Ignore attachments",
		Flag = "IgnoreAttachments"
	});

	Items:Colorpicker({
		Name = "Color",
		Flag = "VMItemColor",
		Default = {Color3.fromRGB(0, 100, 255), 0}
	});

	Items:Dropdown({
		Name = "Material",
		Flag = "VMItemMaterial",
		Options = {"SmoothPlastic", "ForceField", "Neon", "Glass"}
	});

	Items:Slider({
		Name = "Reflectance", Flag = "ItemReflectance",
		Min = 0, Max = 5, Increment = 0.001
	})
	--

	--// Arms
	Arms:Toggle({
		Name = "Enabled",
		Flag = "ArmChams"
	});

	Arms:Colorpicker({
		Name = "Color",
		Flag = "ArmColor",
		Default = {Color3.fromRGB(0, 100, 255), 0}
	})

	Arms:Dropdown({
		Name = "Material",
		Flag = "ArmMaterial",
		Options = {"SmoothPlastic", "ForceField", "Neon", "Glass"}
	});

	Arms:Slider({
		Name = "Reflectance", Flag = "ArmReflectance",
		Min = 0, Max = 5, Increment = 0.001
	})
	--

	--// Shirt
	Sleeves:Toggle({
		Name = "Enabled",
		Flag = "ShirtChams"
	})

	Sleeves:Colorpicker({
		Name = "Color",
		Flag = "ShirtColor",
		Default = {Color3.fromRGB(0, 100, 255), 0}
	})

	Sleeves:Dropdown({
		Name = "Material",
		Flag = "ShirtMaterial",
		Options = {"SmoothPlastic", "ForceField", "Neon", "Glass"}
	});

	Sleeves:Toggle({
		Name = "Remove sleeves",
		Flag = "RemoveClothing"
	});

	Sleeves:Slider({
		Name = "Reflectance", Flag = "ShirtReflectance",
		Min = 0, Max = 5, Increment = 0.001
	})
	--

	--// Gloves
	Gloves:Toggle({
		Name = "Enabled",
		Flag = "GloveChams"
	})

	Gloves:Colorpicker({
		Name = "Color",
		Flag = "GloveColor",
		Default = {Color3.fromRGB(0, 100, 255), 0}
	})

	Gloves:Dropdown({
		Name = "Material",
		Flag = "GloveMaterial",
		Options = {"SmoothPlastic", "ForceField", "Neon", "Glass"}
	});

	Gloves:Slider({
		Name = "Reflectance", Flag = "GloveReflectance",
		Min = 0, Max = 5, Increment = 0.001
	})
	--

	--// Highlight 
	Highlight:Colorpicker({
		Name = "Fill Color",
		Flag = "VMFillColor",
		Default = {Color3.fromRGB(0, 0, 0), 1}
	})

	Highlight:Colorpicker({
		Name = "Outline Color",
		Flag = "VMOutlineColor",
		Default = {Color3.fromRGB(0, 0, 0), 0}
	})
	--

	--
                --[[
                     ViewmodelSandbox:AddColorpicker("Highlight fill color", "VMFillColor", Color3.fromRGB(0, 0, 0), 1);
                        ViewmodelSandbox:AddColorpicker("Highlight outline color", "VMOutlineColor", Color3.fromRGB(0, 0, 0), 0)
                ]]
	--
	-- 

	local MiscCategories = {
		Interactions = Pages.Misc:Category({ Name = "Interactions" }),
		Movement = Pages.Misc:Category({ Name = "Movement" }),
	};

	--// Misc Interaction Categories 
	local Loot = MiscCategories.Interactions:Section({
		Name = "Looting",
		Side = "Right"
	});

	Loot:Toggle({
		Name = "Instant loot",
		Flag = "InstantLoot",
		Callback = function()
			if #Globals.QuickStackFunctions > 0 then
				for _, FUNCTION in pairs(Globals.QuickStackFunctions) do
					debug.setconstant(FUNCTION, 19, Library.Flags.InstantLoot.Value and 0 or 0.9) -- 0.9 
					debug.setconstant(FUNCTION, 20, Library.Flags.InstantLoot.Value and 0 or 0.3) -- 0.3
					debug.setconstant(FUNCTION, 21, Library.Flags.InstantLoot.Value and 0 or 0.1) -- 0.1
				end
			end
		end;
	});

	local Bases = MiscCategories.Interactions:Section({
		Name = "Bases",
		Side = "Left"
	});

	Bases:Toggle({
		Name = "Disable turrets",
		Flag = "DisableTurrets",
		Callback = LPH_NO_VIRTUALIZE(function()
			for Index, Part in next, Globals.TouchCollisions do 
				Part.CanTouch = not Library.Flags.DisableTurrets.Value
			end;
		end);
	});

	Bases:Toggle({
		Name = "Disable trap damage",
		Flag = "DisableDamageParts",
		Callback = LPH_NO_VIRTUALIZE(function()
			for Index, Part in next, Globals.DamageParts do 
				Part.CanTouch = not Library.Flags.DisableDamageParts.Value 
			end;
		end);
	});

	local Building = MiscCategories.Interactions:Section({
		Name = "Building",
		Side = "Left"
	});

	Building:Toggle({
		Name = "Auto Upgrade",
		Flag = "AutoUpgrade"
	});

	Building:Slider({
		Name = "Distance",
		Flag = "AutoUpgradeDistance",
		Min = 5, Max = 30
	});

	Building:Dropdown({
		Name = "Level",
		Flag = "UpgradeMaterial",
		Options = {
			"Wood",
			"Stone",
			"Metal",
			"Steel"
		};
	});
	-- 

	--// Misc Movement categories 
	local Flight = MiscCategories.Movement:Section({
		Name = "Flight",
		Side = "Left"
	});

	local GeneralMovement = MiscCategories.Movement:Section({
		Name = "General movement",
		Side = "Right"
	})

	local NoFall = MiscCategories.Movement:Section({
		Name = "Anti fall damage",
		Side = "Left"
	});

	local TeleportSection = MiscCategories.Movement:Section({
		Name = "Teleport",
		Side = "Right"
	})

	--// Teleport section
	TeleportSection:Toggle({
		Name = "Enabled",
		Flag = "ShootOnTP",
		Risky = true
	});

	TeleportSection:Keybind({
		Name = "Teleport Key",
		Flag = "Teleport Activation",
		Mode = "Toggle"
	})
	--

	--// Flight Section
	Flight:Toggle({
		Name = "Enabled",
		Flag = "Fly",
	});

	Flight:Toggle({
		Name = "Bypass flight restriction",
		Flag = "InfiniteFly",
		Risky = true
	});

	Flight:Keybind({
		Name = "Fly key",
		Flag = "Fly Activation"
	});

	Flight:Slider({
		Name = "Fly speed",
		Flag = "FlySpeed",
		Min = 2, Max = 6,
		Increment = 0.1,
	});
	--

	--// General movement 
	GeneralMovement:Toggle({
		Name = "Silent step",
		Flag = "SilentStep",
		Risky = true
	});

	GeneralMovement:Toggle({
		Name = "Bunnyhop",
		Flag = "Bunnyhop"
	});

	GeneralMovement:Toggle({
		Name = "Omnisprint",
		Flag = "Omnisprint"
	});

	GeneralMovement:Toggle({
		Name = "Always grounded",
		Flag = "AlwaysGrounded",
		Tooltip = "Doesn't work on potassium"
	});
	--

	--// No fall
	NoFall:Toggle({
		Name = "Enabled",
		Flag = "NoFall"
	})
	--
	--

	local SkinCategories = {
		Global = Pages.Skins:Category({ Name = "Global Settings" }),
		Guns = Pages.Skins:Category({ Name = "Items" }),
		Armor = Pages.Skins:Category({ Name = "Armor" }),
	}

	--// Skins 

	local GlobalSection = SkinCategories.Global:Section({
		Name = "Global Settings",
		Side = "Left"
	})

	GlobalSection:Toggle({
		Name = "Enable skin changer",
		Flag = "SkinChanger",
	})

	if ReplicatedStorage:FindFirstChild("VMs") then
		local VMs = ReplicatedStorage.VMs; 
		local Sleeves = ReplicatedStorage.Sleeves;

		local ItemSkins = {};
		local ArmorSkins = {}; 

		for Index, Item in VMs:GetChildren() do 
			if Item:IsA("Folder") then 
				ItemSkins[Item.Name] = {}
				for _, Skin in Item:GetChildren() do 
					if Skin:IsA("Model") then 
						ItemSkins[Item.Name][#ItemSkins[Item.Name] + 1] = Skin.Name;
					end;
				end;
			end;
		end;

		for Index, Armor in Sleeves:GetChildren() do 
			if Armor:IsA("Folder") then 
				ArmorSkins[Armor.Name] = {}
				for _, Skin in Armor:GetChildren() do 
					if Skin:IsA("Model") then 
						ArmorSkins[Armor.Name][#ArmorSkins[Armor.Name] + 1] = Skin.Name;
					end;
				end;
			end;
		end;

		do --// Guns/Items
			local GoLeft = false
			for Item, Skins in ItemSkins do 
				if #Skins > 1 then 
					GoLeft = not GoLeft
					local Section = SkinCategories.Guns:Section({
						Name = Item,
						Side = GoLeft and "Left" or "Right"
					});

					Section:Toggle({
						Name = "Enabled",
						Flag = "EnableSkin_"..Item
					})
					Section:Dropdown({
						Name = "Skin",
						Flag = "Skin_"..Item,
						Options = Skins,
					})
				end;
			end;
		end; 

		do --// Armor 
			local GoLeft = false 
			for Armor, Skins in ArmorSkins do 
				if #Skins > 1 then 
					GoLeft = not GoLeft
					local Section = SkinCategories.Armor:Section({
						Name = Armor,
						Side = GoLeft and "Left" or "Right"
					});

					Section:Toggle({
						Name = "Enabled",
						Flag = "EnableSkin_"..Armor
					})
					Section:Dropdown({
						Name = "Skin",
						Flag = "Skin_"..Armor,
						Options = Skins,
					})
				end;
			end;
		end;
	end;
	-- 

	local SettingsCategories = { 
		Main = Pages.Settings:Category({
			Name = "Main"
		}),
	};

	--// Configs 
	local Configs = SettingsCategories.Main:Section({
		Name = "Configurations",
		Side = "Left"
	});

	Configs:Textbox({
		Name = "Configuration Name",
		Flag = "ConfigName",
	});

	local Save = Configs:Button({
		Name = "Save",
		Flag = "SaveButton",
		Confirm = true,
		Callback = LPH_NO_VIRTUALIZE(function()
			Library:SaveConfig(Library.Flags.ConfigName.Value)
		end)
	}):AddButton({
		Name = "Load",
		Flag = "LoadButton",
		Confirm = true,
		Callback = LPH_NO_VIRTUALIZE(function() 
			local s, e = pcall(Library:LoadConfig(Library.Flags.ConfigName.Value))
			if not s and e then rconsoleprint(e); end;
		end);
	});
	Configs:Button({
		Name = "Delete config",
		Flag = "DeleteButton",
		Confirm = true,
		Callback = function() 
			local Name = tostring(Library.Flags.ConfigName.Value);
			local FilePath = ConfigsFolder.."/"..Name..".json";
			if not isfile(FilePath) then 
				Library:Notify("Failed to load config!\n"..FilePath.."does not exist!", 4, Color3.fromRGB(255, 165, 0))
				return
			end;

			delfile(FilePath)
		end;
	});

	if game.PlaceId == 17574618959 or game.PlaceId == 18911599934 then 
		Configs:Button({
			Name = "Rejoin",
			Flag = "Rejoin",
			Callback = function() 
				game.TeleportService:Teleport(game.PlaceId);
			end;
		})
	end;
	--

	--// HUD
	local HUD = SettingsCategories.Main:Section({
		Name = "Heads up Display",
		Side = "Right"
	});

	HUD:Toggle({
		Name = "Hotkeys panel",
		Flag = "HotkeysPanel",
		Default = true,
		Callback = function()
			Window.Hotkeys.Components.Hotkeys.Visible = Library.Flags.HotkeysPanel.Value 
		end;
	})

	HUD:Toggle({
		Name = "Moderator panel",
		Flag = "ModeratorPanel",
		Default = true,
		Callback = function()
			Window.ModPanel.Components.Moderators.Visible = Library.Flags.ModeratorPanel.Value 
		end;
	})
	--;

	--// ESP 
	local ESPSettingsGlobal = SettingsCategories.Main:Section({
		Name = "Global ESP settings",
		Side = "Left"
	})

	ESPSettingsGlobal:Slider({
		Name = "Chams refresh rate",
		Flag = "ChamsRefreshRate",
		Min = 0, Max = 10, Suffix = "s", Increment = 0.1
	})
	--;

	local Watermark = Library:CreateWatermark("")
	task.wait(0.5)

	Globals:Tween(Window.Components.Outline, TweenInfo.new(Library.HighlightSpeed, Enum.EasingStyle.Quad), {
		Position = UDim2.new(0.5, 0, 0.5, 0),
	})
	Window:SetTab(Pages.Combat)
	task.wait(2)

	Watermark:SetText("Iridescent x Amongus.Hook - Fallen Survival"); -- Feel free to change it!

	local ArmorPanel = Window.ArmorPanel;
	Globals.ArmorPanel = ArmorPanel;
end)()

Log("Successfully setup UI")
--#endregion UI Setup

--#region Flags 
local AimingAnimationId = "rbxassetid://10982316984"
local HealingAnimationIds = {
	["rbxassetid://14860445359"] = true,
	["rbxassetid://2529243689"] = true
}

EntityClass.Main.Functions:AddFlag({
	Name = "Aiming",
	ClassTypes = {"Player"},
	Text = LPH_NO_VIRTUALIZE(function(self) return "Scope" end),
	Allow = LPH_NO_VIRTUALIZE(function(self)
		if not (self.Character and self.Character:FindFirstChild("Humanoid")) then return false end

		local Root = self.Character.Humanoid.RootPart
		if not Root then return false end

		local Weapon = self.CachedItem
		if Weapon and Weapon.Name == "Wooden Bow" then
			local DrawAnim = Root:FindFirstChild("Wooden BowDraw")
			return DrawAnim and DrawAnim.IsPlaying
		end

		for _, track in ipairs(self.Character.Humanoid:GetPlayingAnimationTracks()) do
			if track.Animation.AnimationId == AimingAnimationId then
				return true
			end
		end
		return false
	end)
})

EntityClass.Main.Functions:AddFlag({
	Name = "Reloading",
	ClassTypes = {"Player"},
	Text = LPH_NO_VIRTUALIZE(function(self) return "Reload" end),
	Allow = LPH_NO_VIRTUALIZE(function(self)
		local Root = self.Character and self.Character:FindFirstChild("HumanoidRootPart")
		local Weapon = self.CachedItem
		if not (Root and Weapon) then return false end

		local WeaponName = Weapon.Name
		local MagIn, MagOut

		if WeaponName == "Crossbow" then
			MagIn = Root:FindFirstChild("CrossbowPlaceArrow")
			MagOut = Root:FindFirstChild("CrossbowPull")
		else
			MagIn = Root:FindFirstChild(WeaponName.. "MagIn")
			MagOut = Root:FindFirstChild(WeaponName .. "MagOut")
		end

		return (MagIn and MagIn.IsPlaying) or (MagOut and MagOut.IsPlaying)
	end)
})

EntityClass.Main.Functions:AddFlag({
	Name = "Healing",
	ClassTypes = {"Player"},
	Text = LPH_NO_VIRTUALIZE(function(self) return "Heal" end),
	Allow = LPH_NO_VIRTUALIZE(function(self)
		if not (self.Character and self.Character:FindFirstChild("Humanoid")) then return false end

		for _, track in ipairs(self.Character.Humanoid:GetPlayingAnimationTracks()) do
			if HealingAnimationIds[track.Animation.AnimationId] then
				return true
			end
		end
		return false
	end)
})

EntityClass.Main.Functions:AddFlag({
	Name = "VIP",
	ClassTypes = {"Player"},
	Text = LPH_NO_VIRTUALIZE(function(self) return "VIP" end),
	Allow = LPH_NO_VIRTUALIZE(function(self)
		return self.Pointer and self.Pointer:GetAttribute("VIP")
	end)
})

EntityClass.Main.Functions:AddFlag({
	Name = "Clan",
	ClassTypes = {"Player"},
	Text = LPH_NO_VIRTUALIZE(function(self)
		if self.Pointer:GetAttribute("ClanTag") then 
			return "C: "..self.Pointer:GetAttribute("ClanTag")
		end 
		return ""
	end),
	Allow = LPH_NO_VIRTUALIZE(function(self)
		return self.Pointer and self.Pointer:GetAttribute("ClanTag")
	end)
})

EntityClass.Main.Functions:AddFlag({
	Name = "Staff",
	ClassTypes = {"Player"},
	Text = LPH_NO_VIRTUALIZE(function(self)
		return self.Pointer and Globals.FlaggedStaff[self.Pointer] 
			and "STAFF: "..Globals.FlaggedStaff[self.Pointer] or nil
	end),
	Allow = LPH_NO_VIRTUALIZE(function(self)
		return self.Pointer and Globals.FlaggedStaff[self.Pointer]
	end)
})
--#endregion Flags

--#region Connections
local RaidsFolder = Globals:Instance("Folder", { 
	Parent = CoreGui,
	Name = "Raids"
});

Globals.RaidsFolder = RaidsFolder;

local AttackersFolder = Globals:Instance("Folder", { 
	Parent = CoreGui,
	Name = "AttackerFolder"
})

Globals.AttackersFolder = AttackersFolder;

--// All important connections
LPH_JIT_MAX(function()
	--// Players
	local ModPanel = Library.Window.ModPanel;
	local FlaggedRoles = {
		"OG",
		"Game Tester",
		"Game Moderator",
		"Developers",
		"Lead Developer",
		"Co-Founder",
		"Founder",
	};

	local function CheckMod(Player) 
		if Player == Client then 
			Library:Notify("Test....");
			ModPanel:Add(Player.Name, "test")
		end;

		local Role = "cuck"
		local IsMod = false;
		if Player:IsInGroup(1154360) then
			Role = Player:GetRoleInGroup(1154360)
			if table.find(FlaggedRoles, Role) then
				Library:Notify("Staff detected! ["..Player.Name .. "] Role: "..Role, 15, Color3.fromRGB(255, 0, 0))
				ModPanel:Add(Player.Name, Role);
				Globals.FlaggedStaff[Player] = Role
			end
		end;

		if TrialModList[Player.UserId] and not Globals.FlaggedStaff[Player] then 
			Role = "Trial Moderator";
			Library:Notify("Staff detected! "..Player.Name .. " | Role: "..Role, 15, Color3.fromRGB(255, 0, 0))
			ModPanel:Add(Player.Name, Role);
			Globals.FlaggedStaff[Player] = Role
		end;

		return IsMod, Role
	end;

	for Index, Player in Players:GetChildren() do 
		if Player ~= Client then 
			local EntityObject = EntityClass.Global:Create(
				Player,
				{
					Class = "Player",
					ClassType = "Player",
				}
			); 

			Player.CharacterAdded:Connect(function(Character)
				EntityObject:OnCharacterAdded(Character)
			end)

			if Player.Character then 
				EntityObject:OnCharacterAdded(Player.Character);
			end;

			pcall(CheckMod, Player)
		end;
	end;

	Players.PlayerAdded:Connect(function(Player)
		local EntityObject = EntityClass.Global:Create(
			Player,
			{
				Class = "Player",
				ClassType = "Player",
			}
		); 

		Player.CharacterAdded:Connect(function(Character)
			EntityObject:OnCharacterAdded(Character)
		end)

		if Player.Character then 
			EntityObject:OnCharacterAdded(Player.Character);
		end;

		pcall(CheckMod, Player)
	end);

	Players.ChildRemoved:Connect(function(Player)
		EntityClass.Main.Functions:Remove(Player);
		if Globals.FlaggedStaff[Player] then 
			ModPanel:UpdateModerator(Player.Name, nil, true)
		end;
	end)
	--

	--// AI 
	local Military = Workspace:FindFirstChild("Military")
	if Military then 
		local Events = Workspace:FindFirstChild("Events")
		local function CacheSoldier(Soldier)
			if table.find({"Brutus", "Bruno", "BTR", "Boris", "Soldier"}, Soldier.Name) then 
				local ClassType = "AI"
				if Soldier.Name == "Brutus" or Soldier.Name == "Bruno" or Soldier.Name == "Boris" or Soldier.Name == "BTR" then 
					ClassType = "Boss"
				end;

				local EntityObject = EntityClass.Global:Create(
					Soldier,
					{
						Class = "AI",
						ClassType = ClassType,
					}
				); 
			else 
				return
			end;
		end;

		for Index, BTR in Events:GetChildren() do 
			if BTR.Name == "BTR" then 
				CacheSoldier(BTR)
			end;
		end;

		Events.ChildAdded:Connect(function(BTR)
			task.wait(1)
			if BTR.Name == "BTR" then 
				CacheSoldier(BTR)
			end;
		end)

		Events.ChildRemoved:Connect(function(BTR)
			EntityClass.Main.Functions:Remove(BTR)
		end)

		for _, Folder in Military:GetChildren() do 
			for Index, Soldier in Folder:GetChildren() do 
				if Soldier:IsA("Model") then 
					CacheSoldier(Soldier)
				end;
			end;

			Folder.ChildAdded:Connect(function(Soldier)
				task.wait(1)
				if Soldier:IsA("Model") then 
					CacheSoldier(Soldier)
				end;
			end)

			Folder.ChildRemoved:Connect(function(Soldier)
				EntityClass.Main.Functions:Remove(Soldier)
			end)
		end;
	end;
	--

	--// Misc ESP
	local Nodes = Workspace:FindFirstChild("Nodes");
	local Drops = Workspace:FindFirstChild("Drops");
	local Bases = Workspace:FindFirstChild("Bases");
	local Plants = Workspace:FindFirstChild("Plants")

	local FixedNames = {
		["Metal_Node"]      = "Metal node",
		["Phosphate_Node"]  = "Phosphate node",
		["Stone_Node"]      = "Stone node",
	};

	if Nodes then 
		EntityClass.Misc.Functions.AddListener({
			Parent = Nodes,
			ClassName = "Model",
			Listener = "NodeListener",
			Flag = "Nodes",
			GetColor = LPH_NO_VIRTUALIZE(function(Data) 
				local Name = FixedNames[Data.Object.Name];
				return Library.Flags[Name.."Color"].Value[1];
			end);

			GetAlpha = LPH_NO_VIRTUALIZE(function(Data) 
				local Name = FixedNames[Data.Object.Name];
				return Library.Flags[Name.."Color"].Value[2];
			end);

			GetName = LPH_NO_VIRTUALIZE(function(Data)
				local HealthPercent = math.floor((Data.Object:GetAttribute("Health") / Data.Object:GetAttribute("MaxHealth")) * 100);
				local Name = FixedNames[Data.Object.Name];

				return Name .. " "..tostring(HealthPercent).."%"
			end);

			GetPosition = LPH_NO_VIRTUALIZE(function(Data) 
				return Data.Object:FindFirstChild("Main") and Data.Object:FindFirstChild("Main").CFrame.p 
			end);

			GetDistance = LPH_NO_VIRTUALIZE(function(Data) 
				return Data.Object:FindFirstChild("Main") and math.floor((Camera.CFrame.p - Data.Object:FindFirstChild("Main").CFrame.p).Magnitude);
			end);

			Validate    = LPH_NO_VIRTUALIZE(function(Data) 
				local Name = FixedNames[Data.Object.Name];
				return Library.Flags[Name.."CanShow"].Value;
			end);
		});

		Library:Notify("Added node listener...")
	end;
	--
	if Drops then
		local ItemColors = {
			["Misc"] = Color3.fromRGB(210, 210, 210),
			["Gun"] = Color3.fromRGB(214, 20, 20),
			["Ammo"] = Color3.fromRGB(214, 50, 50),
			["Consumable"] = Color3.fromRGB(50, 214, 50),
			["Bench"] = Color3.fromRGB(210, 210, 210),
			["Attachment"] = Color3.fromRGB(252, 215, 3),
			["Resource"] = Color3.fromRGB(3, 252, 161),
			["Lock"] = Color3.fromRGB(210, 210, 210),
			["Tool"] = Color3.fromRGB(255, 255, 255),
			["Armor"] = Color3.fromRGB(255, 0, 183)
		};

		EntityClass.Misc.Functions.AddListener({
			Parent = Drops,
			ClassName = "Model",
			Listener = "ItemListener",
			Flag = "Items",
			GetColor = LPH_NO_VIRTUALIZE(function(Data) 
				return  Library.Flags["ItemsColor"].Value[1];
			end);

			GetAlpha = LPH_NO_VIRTUALIZE(function(Data) 
				return Library.Flags["ItemsColor"].Value[2];
			end);

			GetName = LPH_NO_VIRTUALIZE(function(Data)
				if not Data.DecodedInformation then 
					local Item = Data.Object:FindFirstChild("Item");
					Item = HttpService:JSONDecode(Item.Value);
					local ID = Item.ID; 
					local Amount = Item.Amount;

					local ItemInfo = Globals.ItemInfoTable[ID];
					local Type = ItemInfo.Type;
					Data.Type = Type; 
					Data.DecodedInformation = { 
						ID = ID,
						Amount = Amount,
					};
				end;

				local Color = ItemColors[Data.Type]
				local Name = Data.Object.Name;

				if Data.DecodedInformation.Amount > 1 then
					Name = Name .. " x"..tostring(Data.DecodedInformation.Amount)
				end;

				return Name
			end);

			GetPosition = LPH_NO_VIRTUALIZE(function(Data) 
				return Data.Object.PrimaryPart and Data.Object.PrimaryPart.CFrame.p 
			end);

			GetDistance = LPH_NO_VIRTUALIZE(function(Data) 
				return Data.Object.PrimaryPart and math.floor((Camera.CFrame.p - Data.Object.PrimaryPart.CFrame.p).Magnitude);
			end);

			Validate    = LPH_NO_VIRTUALIZE(function(Data) 
				if Data.Object:FindFirstChild("Item") then 
					if not Data.DecodedInformation then 
						local Item = Data.Object:FindFirstChild("Item");
						Item = HttpService:JSONDecode(Item.Value);
						local ID = Item.ID; 
						local Amount = Item.Amount;

						local ItemInfo = Globals.ItemInfoTable[ID];
						local Type = ItemInfo.Type;
						Data.Type = Type; 
						Data.DecodedInformation = { 
							ID = ID,
							Amount = Amount,
						};
					end;
					return Library.Flags["Include"..Data.Type].Value;
				end;
			end);
		});

		Library:Notify("Added item listener..")
		EntityClass.Misc.Functions.AddListener({
			Parent = Globals.RaidsFolder,
			ClassName = "Part",
			Listener = "RaidListener",
			Flag = "Raids",
			GetName = LPH_NO_VIRTUALIZE(function(Data) 
				local Object = Data.Object;
				local Type = Object.Name
				local Time = tostring(math.floor(tick() - Object.StartedAt.Value));
				return "Potential Raid - "..Object.Name.."\n"..tostring(Time).." seconds ago";
			end);

			GetPosition = LPH_NO_VIRTUALIZE(function(Data) 
				return Data.Object and Data.Object.CFrame.p 
			end);

			GetDistance = LPH_NO_VIRTUALIZE(function(Data) 
				return Data.Object and math.floor((Camera.CFrame.p - Data.Object.CFrame.p).Magnitude);
			end);

			Validate = LPH_NO_VIRTUALIZE(function(Data)
				return true;
			end);
		});

		EntityClass.Misc.Functions.AddListener({ 
			Parent = Globals.AttackersFolder,
			ClassName = "Part",
			Listener = "AttackerListener",
			Flag = "Attackers",
			GetName = LPH_NO_VIRTUALIZE(function(Data) 
				return Data.Object.Name
			end);

			GetPosition = LPH_NO_VIRTUALIZE(function(Data) 
				return Data.Object and Data.Object.CFrame.p 
			end);

			GetDistance = LPH_NO_VIRTUALIZE(function(Data) 
				return Data.Object and math.floor((Camera.CFrame.p - Data.Object.CFrame.p).Magnitude);
			end);

			Validate = LPH_NO_VIRTUALIZE(function(Data)
				return true;
			end);
		})
	end;
	--
	if Bases then 
		local Loners = Bases:FindFirstChild("Loners");
		local TimedCrate = Loners:FindFirstChild("Timed Crate");
		local Sleeper = Loners:FindFirstChild("Sleeper");

		if TimedCrate then 
			EntityClass.Misc.Functions.AddListener({
				Parent = TimedCrate,
				ClassName = "Model",
				Listener = "TimedCrateListener",
				Flag = "TimedCrates",
				GetName = LPH_NO_VIRTUALIZE(function(Data)
					local Name = Data.Object.Name
					local Timer = Data.Object:FindFirstChild("Timer");
					local GuiHolder = Timer and Timer:FindFirstChild("GuiHolder");
					local SurfaceGui = GuiHolder and GuiHolder:FindFirstChild("Label");
					local TextLabel = SurfaceGui and SurfaceGui:FindFirstChild("TextLabel");
					local TimeRemaining = TextLabel and TextLabel.Text or "12:00";

					return Name .. " ["..TimeRemaining.."]"
				end);

				GetPosition = LPH_NO_VIRTUALIZE(function(Data) 
					return Data.Object.PrimaryPart and Data.Object.PrimaryPart.CFrame.p 
				end);

				GetDistance = LPH_NO_VIRTUALIZE(function(Data) 
					return Data.Object.PrimaryPart and math.floor((Camera.CFrame.p - Data.Object.PrimaryPart.CFrame.p).Magnitude);
				end);

				Validate    = LPH_NO_VIRTUALIZE(function(Data) 
					return true
				end);
			});

			Library:Notify("Added timed crate listener...")
		end;
		--
		if Loners then 
			local CarePackage = Loners:FindFirstChild("Care Package");
			local BodyBag = Loners:FindFirstChild("Body Bag")
			if CarePackage then 
				EntityClass.Misc.Functions.AddListener({
					Parent = CarePackage,
					ClassName = "Model",
					Listener = "CarePackageListener",
					Flag = "CarePackages",
					GetName = LPH_NO_VIRTUALIZE(function(Data)
						local Name = Data.Object.Name
						return Name
					end);

					GetPosition = LPH_NO_VIRTUALIZE(function(Data) 
						return Data.Object.PrimaryPart and Data.Object.PrimaryPart.CFrame.p 
					end);

					GetDistance = LPH_NO_VIRTUALIZE(function(Data) 
						return Data.Object.PrimaryPart and math.floor((Camera.CFrame.p - Data.Object.PrimaryPart.CFrame.p).Magnitude);
					end);

					Validate    = LPH_NO_VIRTUALIZE(function(Data) 
						return true
					end);

				});

				Library:Notify("Added care package listener...")
			end;

			if BodyBag then 
				EntityClass.Misc.Functions.AddListener({
					Parent = BodyBag,
					ClassName = "Model",
					Name = "Body Bag",
					Listener = "BodyBagListener",
					Flag = "BodyBags",
					GetName = LPH_NO_VIRTUALIZE(function(Data)
						local Name = Data.Object.Name;
						local OwnerName = Data.Object:GetAttribute("OwnerName");

						local FixedName = Name .. " - "..OwnerName
						return FixedName
					end);

					GetPosition = LPH_NO_VIRTUALIZE(function(Data) 
						return Data.Object.PrimaryPart and Data.Object.PrimaryPart.CFrame.p 
					end);

					GetDistance = LPH_NO_VIRTUALIZE(function(Data) 
						return Data.Object.PrimaryPart and math.floor((Camera.CFrame.p - Data.Object.PrimaryPart.CFrame.p).Magnitude);
					end);

					Validate    = LPH_NO_VIRTUALIZE(function(Data) 
						return true
					end);
				});
				Library:Notify("Added body bag listener...")
			end;
		end;
		--
		if Sleeper then 
			EntityClass.Misc.Functions.AddListener({
				Parent = Sleeper,
				ClassName = "Model",
				Listener = "SleeperListener",
				Flag = "Sleepers",
				GetName = LPH_NO_VIRTUALIZE(function(Data)
					local Name = Data.Object.Name;
					local OwnerName = "Owner";
					local NameTag = Data.Object:FindFirstChild("NameTag");
					local Label = NameTag and NameTag:FindFirstChild("Label");
					OwnerName = Label and Label.Text or OwnerName;

					local FixedName = Name .. " - "..OwnerName
					return FixedName
				end);

				GetPosition = LPH_NO_VIRTUALIZE(function(Data) 
					return Data.Object.PrimaryPart and Data.Object.PrimaryPart.CFrame.p 
				end);

				GetDistance = LPH_NO_VIRTUALIZE(function(Data) 
					return Data.Object.PrimaryPart and math.floor((Camera.CFrame.p - Data.Object.PrimaryPart.CFrame.p).Magnitude);
				end);

				Validate    = LPH_NO_VIRTUALIZE(function(Data) 
					return true
				end);
			});
			Library:Notify("Added sleeper listener...")
		end;
	end; 

	if Plants then 
		EntityClass.Misc.Functions.AddListener({
			Parent = Plants,
			Name = "Wool Plant",
			Listener = "WoolListener",
			Flag = "WoolPlants",
			GetName = LPH_NO_VIRTUALIZE(function(Data)
				return "Cloth Plant"
			end);

			GetPosition = LPH_NO_VIRTUALIZE(function(Data) 
				return Data.Object.PrimaryPart and Data.Object.PrimaryPart.CFrame.p 
			end);

			GetDistance = LPH_NO_VIRTUALIZE(function(Data) 
				return Data.Object.PrimaryPart and math.floor((Camera.CFrame.p - Data.Object.PrimaryPart.CFrame.p).Magnitude);
			end);

			Validate    = LPH_NO_VIRTUALIZE(function(Data) 
				return true
			end);
		});

		Library:Notify("Added plant listener...")
	end;
	--

	--// Camera 
	Camera:GetPropertyChangedSignal("FieldOfView"):Connect(LPH_NO_VIRTUALIZE(function()
		if Library.Flags.Zoom.Value and Library.Flags["Zoom Activation"].Active then 
			Camera.FieldOfView = Library.Flags.ZoomFOV.Value
			return 
		end;

		if Library.Flags.ChangeFOV.Value then 
			Camera.FieldOfView = Library.Flags.CustomFOV.Value
		end;
	end));
	--

	--// Viewmodel 
	local VFX = Workspace:FindFirstChild("VFX")
	local VMs = VFX and VFX:FindFirstChild("VMs"); 

	if VMs then 
		VMs.ChildAdded:Connect(LPH_NO_VIRTUALIZE(function(Viewmodel) 
			task.wait()
			if Viewmodel:IsA("Model") then 
				local Arms = Viewmodel:WaitForChild("Arms");
				local Weapon = Viewmodel:WaitForChild("Weapon");
				local Highlight = Viewmodel:WaitForChild("Highlight", 1); 

				if Arms and Weapon then
					if Library.Flags.ViewmodelSandbox.Value then 
						if Highlight then 
							Highlight.FillColor = Library.Flags.VMFillColor.Value[1];
							Highlight.FillTransparency = Library.Flags.VMFillColor.Value[2];

							Highlight.OutlineColor = Library.Flags.VMOutlineColor.Value[1];
							Highlight.OutlineTransparency = Library.Flags.VMOutlineColor.Value[2];
						end;

						for Index, Part in next, Arms:GetDescendants() do 
							if Part:IsA("MeshPart") then
								if (Part.Name == "Sleeve" or Part.Name == "Armor")  and Library.Flags.ShirtChams and Library.Flags.ShirtChams.Value then 
									Part.Material = Library.Flags.ShirtMaterial.Value;
									Part.Color = Library.Flags.ShirtColor.Value[1];
									Part.Transparency = Library.Flags.ShirtColor.Value[2];
									Part.Reflectance = Library.Flags.ShirtReflectance.Value
								end; 

								if (Part.Name == "Sleeve" or Part.Name == "Armor") and Library.Flags.RemoveClothing and Library.Flags.RemoveClothing.Value then 
									Part.Transparency = 1; 
								end;

								if (Part.Name == "Glove" or Part.Name == "Wrap") and Library.Flags.GloveChams and Library.Flags.GloveChams.Value then 
									Part.Material = Library.Flags.GloveMaterial.Value;
									Part.Color = Library.Flags.GloveColor.Value[1];
									Part.Transparency = Library.Flags.GloveColor.Value[2];
									Part.Reflectance = Library.Flags.GloveReflectance.Value
								end;

								if (Part.Name == "RightArm" or Part.Name == "LeftArm") and Library.Flags.ArmChams and Library.Flags.ArmChams.Value then 
									Part.Material = Library.Flags.ArmMaterial.Value; 
									Part.Color = Library.Flags.ArmColor.Value[1]; 
									Part.Transparency = Library.Flags.ArmColor.Value[2];
									Part.Reflectance = Library.Flags.ArmReflectance.Value
								end;

								if Part.Material == Enum.Material.SmoothPlastic or Part.Material == Enum.Material.Glass or Part.Material == Enum.Material.Neon then 
									Part.TextureID = ""; 
								end;

								if Part.Material == Enum.Material.ForceField then 
									Part.TextureID = "rbxassetid://5843010904";
								end;
							end;
						end;

						if Library.Flags.ItemChams.Value then
							for Index, Part in next, Weapon:GetDescendants() do 
								if Part and Part:IsA("MeshPart") and Part.Transparency ~= 1 then
									if Weapon:FindFirstChild("Attachments") then 
										if Part:IsDescendantOf(Weapon:FindFirstChild("Attachments")) then 
											if not Library.Flags.IgnoreAttachments.Value then 
												Part.Material = Library.Flags.VMItemMaterial.Value;
												Part.Color = Library.Flags.VMItemColor.Value[1];
												Part.Transparency = Library.Flags.VMItemColor.Value[2];
												Part.Reflectance = Library.Flags.ItemReflectance.Value
											end;
										else
											Part.Reflectance = Library.Flags.ItemReflectance.Value
											Part.Material = Library.Flags.VMItemMaterial.Value;
											Part.Color = Library.Flags.VMItemColor.Value[1];
											Part.Transparency = Library.Flags.VMItemColor.Value[2];
										end;
									else 
										Part.Reflectance = Library.Flags.ItemReflectance.Value
										Part.Material = Library.Flags.VMItemMaterial.Value;
										Part.Color = Library.Flags.VMItemColor.Value[1];
										Part.Transparency = Library.Flags.VMItemColor.Value[2];
									end; 

									if Part.Material == Enum.Material.SmoothPlastic or Part.Material == Enum.Material.Glass or Part.Material == Enum.Material.Neon then 
										Part.TextureID = ""; 
									end;

									if Part.Material == Enum.Material.ForceField then 
										Part.TextureID = "rbxassetid://5843010904";
									end;
								end;
							end;
						end;
					end;

					if Library.Flags.ThirdPerson.Value and Library.Flags["Third Person Activation"].Active then 
						for Index, Part in Viewmodel:GetDescendants() do 
							if Part:IsA("MeshPart") or Part:IsA("Part") then 
								if Part.Transparency ~= 1 then 
									Part:SetAttribute("OriginalTransparency", Part.Transparency)
								end;
								Part.Transparency = 1;
							end;
						end;
					end;
				end;
			end;
		end));
	end;
	--

	--// World 
	local TouchCollisions = {};
	local DamageParts = {};
	local XRayParts = {};
	local AllowedBuildings = {
		"Wall",
		"Half Wall",
		"Low Wall",
		"Doorway",
		"Window",
		"Foundation",
		"Floor",
		"Triangle Floor",
		"Wall Frame",
		"Floor Frame",
		"Triangle Floor Frame",
		"L-Shaped Stairs",
		"U-Shaped Stairs",
		"Foundation Steps",
		"Foundation",
		"Triangle Foundation"
	};

	local BGrade = {
		["Wood"] = 1,
		["Stone"] = 2,
		["Metal"] = 3,
		["Steel"] = 4,
	};

	if Workspace:FindFirstChild("Bases") then
		LPH_NO_VIRTUALIZE(function()
			for Index, Value in next, Workspace.Bases:GetDescendants() do 
				if Value:IsA("MeshPart") and Value.Name == "Detail" then 
					if Value.Parent and table.find(AllowedBuildings, Value.Parent.Name) then 
						XRayParts[#XRayParts+1] = Value
					end;
				end; 

				if Value.Name == "TouchCollision" and Value.Parent and Value.Parent.Name == "Shotgun Turret" then 
					TouchCollisions[#TouchCollisions+1] = Value
				end; 

				if Value.Name == "DamagePart" then 
					DamageParts[#DamageParts+1] = Value;
				end;
			end;
		end)();

		Workspace.Bases.DescendantAdded:Connect(LPH_NO_VIRTUALIZE(function(Value)
			if  Value.ClassName == 'Model' and Client.Character and Client.Character:FindFirstChild("Blueprint") and table.find(AllowedBuildings, Value.Name) and Library.Flags.AutoUpgrade.Value then 
				task.spawn(function()
					if not Value.PrimaryPart then
						local StartTime = tick()
						repeat
							task.wait()
						until Value.PrimaryPart or tick() - StartTime > 2
					end

					local Main = Value.PrimaryPart; 
					if Main and (Main.CFrame.p - Camera.CFrame.p).Magnitude < Library.Flags.AutoUpgradeDistance.Value then 
						local BuildingGrade = BGrade[Library.Flags.UpgradeMaterial.Value];
                                    if (not BuildingGrade) then
                                          return;
                                    end;

						Library:Notify(
							"Auto Upgrade\n[Building]: "..Value.Name.. " [Quality]: "..Library.Flags.UpgradeMaterial.Value.." [Distance]: "..tostring(math.floor((Main.CFrame.p - Camera.CFrame.p).Magnitude)).."s",
							3,
							Color3.fromRGB(255, 133, 3)
						)

                                    -- '\223\155\187BG2\179\190\204\146\219\194<\001c\152\005\141:?';
                                    -- 'NM\182\001\154\155j\149\231\163\004\179F\180\232\247\208\a\221\217';

                                    -- 'NM\182\1\154\155j\149\231\163\4\179F\180\232\247\208\7\221\217'

						Globals.BuildingNetworkPointer(
							"Fire",
							"NM\182\1\154\155j\149\231\163\4\179F\180\232\247\208\7\221\217",
							"\223\155\187BG2\179\190\204\146\219\194<\1c\152\5\141:?",
							Value,
							BuildingGrade
						);
					end;
				end);
			end;

			task.wait(0.5);

			if Value:IsA("MeshPart") and Value.Name == "Detail" then 
				if Value.Parent and table.find(AllowedBuildings, Value.Parent.Name) then 
					XRayParts[#XRayParts+1] = Value

					if Library.Flags.XRay.Value and Library.Flags["XRay Activation"].Active then 
						Value.Transparency = Library.Flags.XRayTransparency.Value
					end;
				end;
			end; 

			if Value.Name == "TouchCollision" and Value.Parent and Value.Parent.Name == "Shotgun Turret"  then 
				TouchCollisions[#TouchCollisions+1] = Value
				Value.CanTouch = not Library.Flags.DisableTurrets.Value 
			end; 

			if Value.Name == "DamagePart" then 
				DamageParts[#DamageParts+1] = Value;
				Value.CanTouch = not Library.Flags.DisableDamageParts.Value 
			end;
		end));
	end;

	Globals.TouchCollisions = TouchCollisions;
	Globals.DamageParts = DamageParts; 
	Globals.XRayParts = XRayParts
	--
end)()

Lighting:GetPropertyChangedSignal("Brightness"):Connect(LPH_NO_VIRTUALIZE(function()
	if Library.Flags.Fullbright.Value then 
		Lighting.Brightness = Library.Flags.Brightness.Value;
	end;
end));

Lighting:GetPropertyChangedSignal("Ambient"):Connect(LPH_NO_VIRTUALIZE(function()
	if Library.Flags.Ambient.Value then 
		Lighting.Ambient = Library.Flags.AmbientColor.Value[1]
	end
end))

Lighting:GetPropertyChangedSignal("OutdoorAmbient"):Connect(LPH_NO_VIRTUALIZE(function()
	if Library.Flags.Ambient.Value then 
		Lighting.OutdoorAmbient = Library.Flags["AmbientColor"].Value[1]
	end
end));

local Terrain = Workspace.Terrain; 
local Clouds = Terrain:FindFirstChild("Clouds")
local Atmosphere = Lighting:FindFirstChild("Atmosphere");

if Clouds then 
	Clouds:GetPropertyChangedSignal("Density"):Connect(LPH_NO_VIRTUALIZE(function()
		if Library.Flags.ChangeCloudDensity.Value then 
			Clouds.Density = Library.Flags.CloudDensity.Value;
		end;
	end))

	Clouds:GetPropertyChangedSignal("Cover"):Connect(LPH_NO_VIRTUALIZE(function()
		if Library.Flags.ChangeCloudCover.Value then 
			Clouds.Cover = Library.Flags.CloudCover.Value;
		end;
	end))
	Clouds:GetPropertyChangedSignal("Color"):Connect(LPH_NO_VIRTUALIZE(function()
		if Library.Flags.ChangeCloudColor.Value then 
			Clouds.Color = Library.Flags.CloudColor.Value[1];
		end;
	end));
end;

if Atmosphere then 
	Atmosphere:GetPropertyChangedSignal("Density"):Connect(function()
		if Library.Flags.ChangeFogDensity.Value then 
			Atmosphere.Density = Library.Flags.FogDensity.Value
		end;
	end);

	Atmosphere:GetPropertyChangedSignal("Color"):Connect(function()
		if Library.Flags.ChangeFogColor.Value then 
			Atmosphere.Color = Library.Flags.FogColor.Value[1]
		end;
	end);

	Atmosphere:GetPropertyChangedSignal("Decay"):Connect(function()
		if Library.Flags.ChangeFogDecay.Value then 
			Atmosphere.Decay = Library.Flags.FogDecay.Value[1]
		end;
	end);

	Atmosphere:GetPropertyChangedSignal("Haze"):Connect(function()
		if Library.Flags.ChangeFogHaze.Value then 
			Atmosphere.Haze = Library.Flags.FogHaze.Value
		end;
	end);

	Atmosphere:GetPropertyChangedSignal("Glare"):Connect(function()
		if Library.Flags.ChangeFogGlare.Value then 
			Atmosphere.Glare = Library.Flags.FogGlare.Value
		end;
	end);
end;

    --[[Lighting:GetPropertyChangedSignal("ClockTime"):Connect(LPH_NO_VIRTUALIZE(function()
        if Library.Flags.ChangeTime.Value then 
            Lighting.ClockTime = Library.Flags.Time.Value 
        end;
    end))]]

Log("Loaded Connenctions.")
--#endregion Connections

--#region Threads
EntityClass.LastTarget = EntityClass.LastTarget or nil
EntityClass.LastArmorData = EntityClass.LastArmorData or {}

local Swing = LPH_JIT_MAX(function(Remote, Hash, Arguments) -- dereks fuckass broken functions
      Globals.VMNetworkPointer(
            'Fire',
            'd\147e\1R\169#o\249,9\133\153`B4q^W\6',
            '#\250)\215\28\1U\143\237}\154\218\231Cl-\15H\1\147',
            unpack(Arguments)
      );
end);
local Hit = LPH_JIT_MAX(function(Time, MeleeArguments) -- dereks broken fucking function
      local ServerTime = Time or Workspace:GetServerTimeNow();
      local Seed = ServerTime * 10000
      local RoundedSeed = math.round(Seed)
      local RandomCode = Random.new(RoundedSeed):NextInteger(1, 1000000000)
      local RandomCode2 = Random.new(RoundedSeed):NextInteger(1, 10000000000)
      local Table = { 
            RandomCode;        -- used for  hashing
            RandomCode2;       -- used for  hashing
            MeleeArguments[6]; -- Material
            MeleeArguments[4]; -- Angle
            MeleeArguments[5]; -- Root To Tip
            MeleeArguments[3]; -- TargetPart
            MeleeArguments[2]; -- CF
            MeleeArguments[1], -- Random Fuckass number
      };
      local OriginCFrame = Table[2]
      local OriginPosition = OriginCFrame.Position
      local TargetPosition = Table[3].Position
      local Delta = TargetPosition - OriginPosition
                              local Distance = Delta.Magnitude + 20
      local Direction = Delta.Unit * Distance
      local Parent = Table[3].Parent
      local AdjustedHitPosition
      local Params2 = RaycastParams.new();
      Params2.FilterDescendantsInstances = {Parent}
      Params2.FilterType = Enum.RaycastFilterType.Whitelist
      Params2.IgnoreWater = true
      local Result = Workspace:Raycast(OriginPosition, Direction, Globals.RaycastParams);
      local Result2 = Workspace:Raycast(OriginPosition, Direction, Params2)
      if Result and Result.Instance then
            if Result.Normal.Magnitude ~= 1 then 
                  Table[5] = Result.Normal;
            end;
            if Result2 and Result2.Normal then 
                  Table[5] = Result2.Normal;
            end;
            local HitPos = Result.Position
            Table[4] = Table[3].CFrame:PointToObjectSpace(HitPos);
            if not Result.Instance:IsDescendantOf(Parent) then 
                  return
            end;
      end;
                        if typeof(Table[3]) == "Instance" and typeof(Table[2]) == "CFrame" and typeof(Table[5]) == "Vector3" and type(Table[8]) == "number" then
            pcall(function()
                  Globals.VMNetworkPointer(
                        "Fire",
                        'd\147e\1R\169#o\249,9\133\153`B4q^W\6',
                        "\160\29\229\248\31\16pJ\140]\137-\250\171Z_\1\135\223#",
                        unpack(Table)
                  );
            end);
      end;
end);



local doKillaura = LPH_JIT_MAX(function(MeleeArguments) -- yea fixed ur shitty code derek

      local ServerTime  = workspace:GetServerTimeNow();
	local Seed        = ServerTime * 10000
	local RoundedSeed = math.round(Seed)
      local RandomCode1 = Random.new(RoundedSeed):NextInteger(1, 1000000000)
	local RandomCode2 = Random.new(RoundedSeed):NextInteger(1, 10000000000)

      local attackCFrame      = MeleeArguments[2];
      local attackOrigin      = attackCFrame.Position;

      local hitInstance       = MeleeArguments[3];
      local hitCharacter      = hitInstance.Parent;

      if (hitCharacter.Parent ~= workspace) then
            Log('Bad Parent' .. tostring(hitInstance:GetFullName()));
            return;
      end;

      local Params = RaycastParams.new();
      Params.FilterType = Enum.RaycastFilterType.Include;
	Params.FilterDescendantsInstances = { hitCharacter };

      local RaycastResult =  Workspace:Raycast(attackOrigin, hitInstance.Position - attackOrigin, Params);
      if (not RaycastResult) then
            return;
      end;

      Globals.VMNetworkPointer(
		'Fire',
		'd\147e\001R\169#o\249,9\133\153`B4q^W\006',
		'#\250)\215\028\001U\143\237}\154\218\231Cl-\015H\001\147',
		ServerTime,
            MeleeArguments[7]
	);

      task.wait();

      local hitInfo = {
            [1] = RandomCode2;
            [2] = RandomCode1;
            [3] = RaycastResult.Material.Name;
            [4] = RaycastResult.Normal;
            [5] = hitInstance.CFrame:PointToObjectSpace(RaycastResult.Position);
            [6] = hitInstance;
            [7] = CFrame.new( attackOrigin, hitInstance.Position );
            [8] = 3; -- SwingProgression (not a fuckass variable)
      };

      Globals.VMNetworkPointer(
            'Fire',
            'd\147e\001R\169#o\249,9\133\153`B4q^W\006',
            '\160\029\229\248\031\016pJ\140]\137-\250\171Z_\001\135\223#',
            unpack(hitInfo)
      );
end);

local LastArmorTick = tick();
local LastSwing = tick();
local EntityThread = Threads.New("Entity Handler", LPH_NO_VIRTUALIZE(function()
	local Params = RaycastParams.new()
	Params.FilterType = Enum.RaycastFilterType.Blacklist
	Params.FilterDescendantsInstances = {Camera, Client.Character, Workspace:FindFirstChild("VFX")}
	Globals.RaycastParams = Params

	local FOVRadius = Library.Flags.FOVRadius.Value

	if Library.Flags.DynamicFOV and Library.Flags.DynamicFOV.Value then
		local CurrentFOV = Library.Flags.ChangeFOV.Value and Library.Flags.CustomFOV.Value or 90
		local Difference = (CurrentFOV / Camera.FieldOfView)
		Globals:Tween(Visuals.FOVOutline, TweenInfo.new(0.15, Enum.EasingStyle.Linear), {
			Size = UDim2.new(0, Difference * FOVRadius, 0, Difference * FOVRadius)
		})
	else
		Visuals.FOVOutline.Size = UDim2.new(0, FOVRadius, 0, FOVRadius)
	end

	local LastDistance = math.huge
	local ClosestTarget, EntityCharacter, EntityData, EntityInstance = nil, nil, nil, nil
	local Manipulated, ManipulatedPosition, ManipulatedPart, ManipulatedPlayer = false, nil, nil, nil

	local AimbotEnabled = Library.Flags.Aimbot.Value
	local ActivationActive = Library.Flags["Aimbot Activation"].Active
	local AlwaysTarget = Library.Flags.AlwaysTarget.Value
	local UseVisibleCheck = Library.Flags.VisibleCheck.Value
	local RandomizeHitPart = Library.Flags.RandomizeHitPart.Value
	local AimbotPart = Library.Flags.AimbotPart.Value
	local ManipulationActive = Library.Flags.Manipulation.Value and Library.Flags["Manipulation Activation"].Active
	local DynamicFOVRadius = Visuals.FOVCircle.AbsoluteSize.X / 2
	local ClientRoot = Client.Character and Client.Character:FindFirstChild("HumanoidRootPart")

	for Entity, Object in EntityClass.Main.Cache do

		if tick() - Object.LastUpdate > 0.0145 then 
			Object.LastUpdate = tick();
			Object:Update()
		end;

		local Core = Object.CoreInformation
		if not (Core and Core.Root and Object.Character and Entity ~= Client) then continue end

		if not (Core.OnScreen and not Object.Friendly and AimbotEnabled) then continue end

		local TargetingFlag = Library.Flags["Target" .. Object.ClassType]
		if not (TargetingFlag and TargetingFlag.Value and (ActivationActive or AlwaysTarget)) then continue end

		local Distance = Visuals.GetDistanceFromCenter(Core.Root)
		if Distance >= LastDistance or Distance > DynamicFOVRadius then continue end

		local TargetPart
		if UseVisibleCheck and Core.Visible then
			TargetPart = Core.VisiblePart
		elseif not UseVisibleCheck then
			TargetPart = Object.Character:FindFirstChild(AimbotPart)
		end

		if Core.Visible and RandomizeHitPart then
			local Parts = {}
			for _, Part in ipairs(Object.Character:GetChildren()) do
				if Part:IsA("BasePart") and Visuals.IsPartVisible(Part) then
					table.insert(Parts, Part)
				end
			end
			if #Parts > 0 then
				TargetPart = Parts[math.random(1, #Parts)]
			end
		end

		if Object.Character.Name == "BTR" then
			TargetPart = Object.Character:FindFirstChild("HumanoidRootPart")
		end

		if ManipulationActive and ClientRoot and TargetPart and not Core.Visible then
			local StartPos = ClientRoot.CFrame
			local VisiblePos = EntityClass.Global.FindVisiblePosition(StartPos, TargetPart)
			if VisiblePos then
				Manipulated = true
				ManipulatedPart = TargetPart
				ManipulatedPosition = VisiblePos
				ManipulatedPlayer = Entity
			end
		end

		if TargetPart then
			ClosestTarget = TargetPart
			EntityCharacter = Object.Character
			EntityData = Object
			EntityInstance = Entity
			LastDistance = Distance
		end
	end

	EntityClass.Manipulated = Manipulated
	EntityClass.ManipulatedPart = ManipulatedPart
	EntityClass.ManipulatedPosition = ManipulatedPosition
	EntityClass.ManipulatedPlayer = ManipulatedPlayer
	EntityClass.TargetPart = ClosestTarget
	EntityClass.TargetData = EntityData
	EntityClass.TargetInstance = EntityInstance
	EntityClass.TargetCharacter = EntityCharacter

	if ClosestTarget and Library.Flags.AimbotMode.Value == "Memory" then
		Camera.CFrame = CFrame.new(Camera.CFrame.Position, ClosestTarget.Position)
	end

	local ArmorPanel = Library.Window.ArmorPanel
	if EntityData and EntityData.CachedArmor and Library.Flags.ArmorViewer.Value then
		if tick() - Globals.LastArmorCheck > 0.2 then
			local seen = {}
			for _, armor in pairs(EntityData.CachedArmor) do
				if armor.Name and armor.Skin then
					local key = armor.Name .. "_" .. armor.Skin
					seen[key] = true
					ArmorPanel:Add(armor.Name, armor.Skin)
				end
			end
			for _, child in ipairs(ArmorPanel.Components.ArmorList:GetChildren()) do
				if child:IsA("Frame") and not seen[child.Name] then
					ArmorPanel:UpdateArmor(child.Name, nil, true)
				end
			end
			Globals.LastArmorCheck = tick()
		end
	else
		ArmorPanel:ClearAll()
	end 

	local KillAuraTarget = EntityClass.TargetInstance
	if KillAuraTarget and Library.Flags.KillauraToggle.Value and Library.Flags["Killaura Activation"].Active then 
            --[[
            Globals.VMNetworkPointer(
                'Fire',
                'd\147e\1R\169#o\249,9\133\153`B4q^W\6',
                '#\250)\215\28\1U\143\237}\154\218\231Cl-\15H\1\147',
                Workspace:GetServerTimeNow(),
                Weapon
            );

            local Time = Workspace:GetServerTimeNow()
            Swing(Remote, Hash, { Weapon.Name, Time })

            Globals.VMNetworkPointer(
                "Fire",
                'd\147e\1R\169#o\249,9\133\153`B4q^W\6',
                "\160\29\229\248\31\16pJ\140]\137-\250\171Z_\1\135\223#",
            );
            ]]

            --[[]]
		local Weapon = Workspace.VFX.VMs:GetChildren()[1]
		local WeaponData = Weapon and Globals.ToolInfo[Weapon.Name]

		if KillAuraTarget:IsA("Player") then
			KillAuraTarget = KillAuraTarget.Character
		end

		if Client.Character and KillAuraTarget and WeaponData and rawget(WeaponData, "Weapon") and rawget(WeaponData, "Melee") and rawget(WeaponData.Weapon, "Cooldown") then
			local Root = Client.Character:FindFirstChild("HumanoidRootPart") 

			local Cooldown = WeaponData.Weapon.Cooldown
			local Tip = Weapon:FindFirstChild("Weapon") and Weapon.Weapon:FindFirstChild("Main") or Weapon.Weapon:FindFirstChild("Handle")
			local Target = KillAuraTarget:FindFirstChild("Head")

			local AttackCFrame = CFrame.new(Root.Position + Vector3.new(0, 3, 0), Target.Position)
			if Target and (Root.CFrame.p - Target.CFrame.p).Magnitude <= 12 and tick() - LastSwing > Cooldown then
				LastSwing = tick()

				task.spawn(function()
					local Time = Workspace:GetServerTimeNow()

					-- Library:Notify("Attempting to hit") -- not needed tbh

					local RootToTip = Root.CFrame:PointToObjectSpace(Tip.Position)
					local Angle = (Client.Character.Head.Position - Target.Position).Unit

					if Library.Flags.ThirdPerson.Value and Library.Flags["Third Person Activation"].Active then
						local WorldModel = Client.Character:FindFirstChild(Weapon.Name)
						Tip = WorldModel and WorldModel:FindFirstChild("Handle")
						if not Tip then
							return
						end
						RootToTip = Root.CFrame:PointToObjectSpace(Tip.Position) / 10
					end

					if AttackCFrame and Target and Angle and RootToTip then
						Library:Notify("Kill aura attempt!")
						doKillaura({ 3, AttackCFrame, Target, Angle, RootToTip, "Plastic", Weapon.Name })
					end
				end)
			end
		end

            --]]
	end;

end), "Entities")

local VisualsThread = Threads.New("Visuals Handler", LPH_NO_VIRTUALIZE(function()
	--// Crosshair 
	Visuals.CrosshairHolder.Visible = Library.Flags.Crosshair.Value

	if Visuals.CrosshairHolder.Visible then 
		local Length = Library.Flags.CrosshairLength.Value 
		local Width = Library.Flags.CrosshairWidth.Value 
		local Gap = Library.Flags.CrosshairGap.Value; 

		Visuals.CrosshairTop.Size = UDim2.new(0, Width, 0, Length);
		Visuals.CrosshairBottom.Size = UDim2.new(0, Width, 0, Length);

		Visuals.CrosshairRight.Size = UDim2.new(0, Length, 0, Width);
		Visuals.CrosshairLeft.Size = UDim2.new(0, Length, 0, Width);

		Visuals.CrosshairTop.Position = UDim2.new(0.5, 0, 0.5, -Gap - Length / 2)
		Visuals.CrosshairBottom.Position = UDim2.new(0.5, 0, 0.5, Gap + Length / 2)
		Visuals.CrosshairLeft.Position = UDim2.new(0.5, -Gap - Length / 2, 0.5, 0)
		Visuals.CrosshairRight.Position = UDim2.new(0.5, Gap + Length / 2, 0.5, 0)

		Globals:Tween(Visuals.CrosshairTop, TweenInfo.new(0.15, Enum.EasingStyle.Linear, Enum.EasingDirection.Out), {
			BackgroundColor3 = EntityClass.TargetPart and Library.Flags.SyncToLockColor.Value and Library.Flags.TargetColor.Value[1] or Library.Flags.CrosshairColor.Value[1]
		});
		Globals:Tween(Visuals.CrosshairBottom, TweenInfo.new(0.15, Enum.EasingStyle.Linear, Enum.EasingDirection.Out), {
			BackgroundColor3 = EntityClass.TargetPart and Library.Flags.SyncToLockColor.Value and Library.Flags.TargetColor.Value[1] or Library.Flags.CrosshairColor.Value[1]
		});
		Globals:Tween(Visuals.CrosshairLeft, TweenInfo.new(0.15, Enum.EasingStyle.Linear, Enum.EasingDirection.Out), {
			BackgroundColor3 = EntityClass.TargetPart and Library.Flags.SyncToLockColor.Value and Library.Flags.TargetColor.Value[1] or Library.Flags.CrosshairColor.Value[1]
		});
		Globals:Tween(Visuals.CrosshairRight, TweenInfo.new(0.15, Enum.EasingStyle.Linear, Enum.EasingDirection.Out), {
			BackgroundColor3 = EntityClass.TargetPart and Library.Flags.SyncToLockColor.Value and Library.Flags.TargetColor.Value[1] or Library.Flags.CrosshairColor.Value[1]
		});

		if Library.Flags.RotateCrosshair.Value then 
			Visuals.CrosshairHolder.Rotation = Visuals.CrosshairHolder.Rotation + 0.5
		else 
			Visuals.CrosshairHolder.Rotation = 0 
		end;

		if Library.Flags.StickToTarget.Value and EntityClass.TargetPart then
			local Position, OnScreen = Camera:WorldToViewportPoint(EntityClass.TargetPart.Position)
			if OnScreen then
				Globals:Tween(Visuals.CrosshairHolder, TweenInfo.new(0.05, Enum.EasingStyle.Linear, Enum.EasingDirection.Out), {
					Position = UDim2.new(0, Position.X, 0, Position.Y)
				})
			end
		else
			local ScreenSize = Camera.ViewportSize
			Globals:Tween(Visuals.CrosshairHolder, TweenInfo.new(0.05, Enum.EasingStyle.Linear, Enum.EasingDirection.Out), {
				Position = UDim2.new(0, ScreenSize.X / 2, 0, ScreenSize.Y / 2)
			})
		end
	end;
	--

	--// Skin changer 
	if Library.Flags.SkinChanger.Value and tick() - LastArmorTick > 3 then 
		LastArmorTick = tick();
		local ArmorSleeves = Client:GetAttribute("ArmorSleeves") or ""
		local Split = string.split(ArmorSleeves, "^");

		if type(Split) == "table" and Split[1] then 
			local ShirtSplit = Split[1]:split("/")
			local GloveSplit = Split[2] and Split[2]:split("/") or {}

			local Shirt = ShirtSplit[1] or ""
			local ShirtSkin = ShirtSplit[2] or "Default"
			local Glove = GloveSplit[1] or ""
			local GloveSkin = GloveSplit[2] or "Default"

			if Library.Flags["EnableSkin_"..Shirt] and Library.Flags["EnableSkin_"..Shirt].Value then 
				local ClientSkin = Library.Flags["Skin_"..Shirt].Value;
				local SleeveFolder = ReplicatedStorage.Sleeves:FindFirstChild(Shirt)
				if SleeveFolder and SleeveFolder:FindFirstChild(ClientSkin) then 
					ShirtSkin = ClientSkin
				end
			end

			if Library.Flags["EnableSkin_"..Glove] and Library.Flags["EnableSkin_"..Glove].Value then 
				local ClientSkin = Library.Flags["Skin_"..Glove].Value;
				local SleeveFolder = ReplicatedStorage.Sleeves:FindFirstChild(Glove)
				if SleeveFolder and SleeveFolder:FindFirstChild(ClientSkin) then 
					GloveSkin = ClientSkin
				end
			end

			local NewArmor = ""

			if Shirt ~= "" then 
				NewArmor = Shirt.."/"..ShirtSkin; 
			end; 

			if Glove ~= "" then

				if Shirt ~= "" then 
					NewArmor = NewArmor.."^" 
				end;

				NewArmor = NewArmor.. Glove.."/"..GloveSkin
			end;

			if NewArmor ~= "/^/" then
				Client:SetAttribute("ArmorSleeves", NewArmor)
			end;
		end;
	end;
	--

	--// Hitmarkers 
	for Index, Data in Visuals.Hitmarkers do 
		if not Data.Hitmarker then continue end; 

		local ScreenPos, OnScreen = Camera:WorldToViewportPoint(Data.Position);
		if not OnScreen then 
			Data.Hitmarker.Visible = false; 
			continue
		end;

		Data.Hitmarker.Position = UDim2.new(0, ScreenPos.X, 0, ScreenPos.Y);
		Data.Hitmarker.Visible = true;
	end;
	--

	if Library.Flags.ChangeTime.Value then 
		Lighting.ClockTime = Library.Flags.Time.Value 
	end;

end), "Render");

local MiscLoop = Threads.New("Misc entity loop", LPH_NO_VIRTUALIZE(function()
	local SmartESP = Library.Flags.SmartESP.Value
	local CombatHide = Library.Flags.CombatHide.Active
	local FadeRadius = Library.Flags.FadeRadius.Value
	local Font = EntityClass.Font
	local FontSize = EntityClass.FontSize

	if not CombatHide then 
		Visuals.MiscSpace.Enabled = true
		for Entity, Data in EntityClass.Misc.Cache do
			local Listener = Data.Listener
			local Components = Data.Components
			local Object = Entity

			if not Object or not Components or not Components.Name then
				if Components and Components.Name then Components.Name:Destroy() end
				continue
			end

			local Flag = Listener.Flag
			local EnabledFlag = Library.Flags["ESP" .. Flag]
			local MaxDistanceFlag = Library.Flags[Flag .. "Distance"]

			if CombatHide or not EnabledFlag or not EnabledFlag.Value or not Listener.Validate(Data) then
				Components.Name.Visible = false
				continue
			end

			local Position = Listener.GetPosition(Data)
			if not Position then
				Components.Name.Visible = false
				continue
			end

			local Distance = Listener.GetDistance(Data)
			if not Distance or Distance > MaxDistanceFlag.Value then
				Components.Name.Visible = false
				continue
			end

			local ScreenPos, OnScreen = Camera:WorldToViewportPoint(Position)
			if not OnScreen then
				Components.Name.Visible = false
				continue
			end

			local Name = Listener.GetName(Data)
			local NameColor = Listener.GetColor(Data)
			local Alpha = Listener.GetAlpha(Data)

			Components.Name.Text = Name; 
			Components.Name.TextColor3 = NameColor;

			Components.Name.Position = UDim2.new(0, ScreenPos.X, 0, ScreenPos.Y)
			Components.Name.Name = Name
			Components.Name.FontFace = Font
			Components.Name.TextSize = FontSize
			Components.Name.Visible = true

			if SmartESP then
				local CenterDist = Visuals.GetDistanceFromCenter(Position)
				local Fade = math.clamp(CenterDist / FadeRadius, 0, 1)
				Components.Name.TextTransparency = Fade
				Components.Name.UIStroke.Transparency = Fade
			else
				Components.Name.TextTransparency = Alpha
				Components.Name.UIStroke.Transparency = Alpha
			end
		end
	else 
		Visuals.MiscSpace.Enabled = false
	end;
end), "Render")

local MainCharacterThread = Threads.New("Character thread", LPH_NO_VIRTUALIZE(function()
	local Character = Client.Character; 
	local Root = Character and Character:FindFirstChild("HumanoidRootPart");
	local Humanoid = Character and Character:FindFirstChild("Humanoid")
	if Humanoid and Root then 

		--// Third person
		if Library.Flags.ThirdPerson.Value and Library.Flags["Third Person Activation"].Active then
			Client.CameraMaxZoomDistance = Library.Flags.ThirdPersonDistance.Value
			Client.CameraMinZoomDistance = Library.Flags.ThirdPersonDistance.Value
			Client.CameraMode = Enum.CameraMode.Classic

			if Library.Flags.AntiAim and not Library.Flags.AntiAim.Value then
				local LookVector = Camera.CFrame.LookVector
				local Angle = -math.atan2(LookVector.Z, LookVector.X) + math.rad(-90)
				local Angled = CFrame.new(Root.Position) * CFrame.Angles(0, Angle, 0)
				local _, Y, _ = Angled:ToOrientation()
				Globals.AntiAimAngle = CFrame.new(Angled.Position) * CFrame.Angles(0, Y, 0)
				Root.CFrame = Globals.AntiAimAngle
				Humanoid.AutoRotate = false
			end
		else
			Client.CameraMode = Enum.CameraMode.LockFirstPerson
			if not (Library.Flags.AntiAim and Library.Flags.AntiAim.Value) then
				Humanoid.AutoRotate = true
			end
		end
		--

		--// AntiAim
		if Library.Flags.AntiAim and Library.Flags.AntiAim.Value then
			--// Yaw calculation
			local LookVector = Camera.CFrame.LookVector
			local Angle = -math.atan2(LookVector.Z, LookVector.X) + math.rad(-90)

			if Library.Flags.YawBase.Value == "Random" then
				Angle = -math.atan2(LookVector.Z, LookVector.X + math.rad(math.random(-180, 120)))
			elseif Library.Flags.YawBase.Value == "Spin" then
				Angle = -math.atan2(LookVector.Z, LookVector.X) + (tick() * 10) % 360
			elseif Library.Flags.YawBase.Value == "None" then
				Angle = -math.atan2(LookVector.Z, LookVector.X) + math.rad(-90)
			end

			local Offset = math.rad(Library.Flags.YawModifier.Value)
			local Angled = CFrame.new(Root.Position) * CFrame.Angles(0, Angle + Offset, 0)

			if (Library.Flags.YawBase.Value == "Targets") and EntityClass.TargetPart  then
				Angled = CFrame.new(Root.Position, EntityClass.TargetPart.Position) * CFrame.Angles(0, Offset, 0)
			end

			local _, Y, _ = Angled:ToOrientation()
			Globals.AntiAimAngle = CFrame.new(Angled.Position) * CFrame.Angles(0, Y, 0)

			Root.CFrame = Globals.AntiAimAngle
			Humanoid.AutoRotate = false
			--

			--// Pitch calculation
			local Pitch = Library.Flags.PitchModifier.Value
			local PitchBase = Library.Flags.PitchBase.Value

			if PitchBase == "Down" then
				Pitch = 0.7
			elseif PitchBase == "Up" then
				Pitch = -0.7
			elseif PitchBase == "Nod" then
				Pitch = math.sin(tick() * 3)
			elseif PitchBase == "Random" then
				Pitch = math.random() / 10
			end

			Pitch = math.clamp(Pitch, -0.7, 0.7)

			local TorsoController = Client.Character:FindFirstChild("TorsoController")
			local Look = TorsoController and TorsoController:FindFirstChild("Look")
			if Look then
				Look:FireServer(Pitch, 0)
			end
			--      
		else
			if Client.Character:FindFirstChild("CameraController") and not Client.Character.CameraController:GetAttribute("FreeLooking") then 
				Humanoid.AutoRotate = true
			end;
		end
		--

		--// Bunny hop 
		if Library.Flags.Bunnyhop.Value then 
			local Jump = Humanoid.Jump 
			local FloorMaterial = Humanoid.FloorMaterial 
			if tostring(FloorMaterial) ~= "Air" and UserInputService:IsKeyDown(Enum.KeyCode.Space) then 
				Humanoid.Jump = true 
			end;
		end; 

		--// Omnisprint 
		if Globals.DirectionTable and Library.Flags.Omnisprint.Value and UserInputService:IsKeyDown(Enum.KeyCode.LeftShift) then

			--// Direction setting
			Globals.DirectionTable.Left, Globals.DirectionTable.Right, Globals.DirectionTable.Backward, Globals.DirectionTable.Crouch = false, false, false, false
			Globals.DirectionTable.Forward, Globals.DirectionTable.Sprint = true, true
			Globals.DirectionTable.BackwardLeft, Globals.DirectionTable.BackwardRight = false, false
			Globals.DirectionTable.ForwardLeft, Globals.DirectionTable.ForwardRight = false, false
			--

			Humanoid.WalkSpeed = 19

			if Character:FindFirstChild("StateController") then 
				Character.StateController:SetAttribute("IsSprint", true);
				Character.StateController:SetAttribute("Direction", "Forward");
			end;
		end

		--// Debug Camera
		local IsFlying = Library.Flags.Fly.Value and Library.Flags["Fly Activation"].Value
		if Library.Flags.DebugCamera.Value and Library.Flags["Debug Camera Activation"].Active and not IsFlying then
			task.spawn(function()
				if not Globals.DebugStarted then
					Globals.DebugStarted = tick()
				end

				Globals.NeedToReturn = true

				local CameraLookVector = Camera.CFrame.LookVector
				local NormalCameraLookVector = CameraLookVector

				if not Globals.SavedPosition then
					Globals.SavedPosition = Humanoid.RootPart.CFrame
				end

				sethiddenproperty(Humanoid.RootPart, "NetworkIsSleeping", true);

				local UpPos = Vector3.new(0, 1, 0)
				local DownPos = Vector3.new(0, -1, 0)
				local NonePos = Vector3.new(0, 0, 0)

				local BaseCFrame = Humanoid.RootPart.CFrame
				local IsUpPressed = UserInputService:IsKeyDown(Enum.KeyCode.E)
				local IsDownPressed = UserInputService:IsKeyDown(Enum.KeyCode.Q)
				local IsForwardPressed = UserInputService:IsKeyDown(119) -- W
				local IsBackwardPressed = UserInputService:IsKeyDown(115) -- S

				Humanoid.RootPart.Anchored = true
				Humanoid.RootPart.Velocity = NonePos

				local Delta = Globals.Delta * Library.Flags.DebugCameraSpeed.Value * 3

				local MovementVector = (
					Humanoid.MoveDirection +
						(IsUpPressed and UpPos or NonePos) +
						(IsDownPressed and DownPos or NonePos) +
						(IsForwardPressed and Vector3.new(0, NormalCameraLookVector.Y, 0) or NonePos) +
						(IsBackwardPressed and Vector3.new(0, -NormalCameraLookVector.Y, 0) or NonePos)
				) * Delta

				BaseCFrame += MovementVector

				local Position = BaseCFrame.p
				Humanoid.RootPart.CFrame = CFrame.new(Position, Position + Vector3.new(CameraLookVector.X, 0, CameraLookVector.Z))
				Humanoid.AutoRotate = false
			end)
		else
			Globals.DebugStarted = nil
			if Globals.NeedToReturn then
				Humanoid.AutoRotate = true
				Globals.NeedToReturn = false
				sethiddenproperty(Humanoid.RootPart, "NetworkIsSleeping", false)

				for _, Value in pairs(Character:GetChildren()) do
					if Value:IsA("BasePart") then
						sethiddenproperty(Value, "NetworkIsSleeping", false)
					end
				end

				Humanoid.RootPart.CFrame = Globals.SavedPosition
				Humanoid.RootPart.Anchored = false
				Globals.SavedPosition = nil
			end
		end
		--
	end;
end), "Character");

local CharacterHeartbeat = RunService.Heartbeat:Connect(LPH_NO_VIRTUALIZE(function(Delta)
	local Character = Client.Character; 
	local Root = Character and Character:FindFirstChild("HumanoidRootPart");
	local Humanoid = Character and Character:FindFirstChild("Humanoid")

	local IsFlying;
	if Humanoid and Root then 
		--// Fly
		if Library.Flags.Fly.Value and Library.Flags["Fly Activation"].Active then
			task.spawn(function()
				IsFlying = true;
				if Humanoid and Humanoid.Health > 0 then
					local Delta = Delta * Library.Flags.FlySpeed.Value * 3
					local MoveVector = Humanoid.MoveDirection

					if UserInputService:IsKeyDown(Enum.KeyCode.E) then
						MoveVector += Vector3.new(0, 1, 0)
					end
					if UserInputService:IsKeyDown(Enum.KeyCode.LeftControl) then
						MoveVector += Vector3.new(0, -1, 0)
					end
					if UserInputService:IsKeyDown(119) then
						MoveVector += Vector3.new(0, Camera.CFrame.LookVector.Y, 0)
					end
					if UserInputService:IsKeyDown(115) then
						MoveVector += Vector3.new(0, -Camera.CFrame.LookVector.Y, 0)
					end

					local MovementDelta = MoveVector * Delta
					local Position = Root.CFrame.Position + MovementDelta
					Humanoid.PlatformStand = false
					Root.Velocity = Vector3.zero
					Root.CFrame = CFrame.new(Position, Position + Vector3.new(Camera.CFrame.LookVector.X, 0, Camera.CFrame.LookVector.Z))
				end
			end)
		end

		--// Infinite Fly Fall Correction
		if Library.Flags.InfiniteFly.Value and IsFlying then
			local Origin = Root.Position;
			local Result = Workspace:Raycast(Origin, Vector3.new(0, -1000, 0), Globals.RaycastParams);
			if Result and Result.Distance > 4 then
				task.spawn(function()
					local OldVel = Root.Velocity;
					for _, Part in Character:GetChildren() do
						if Part:IsA("BasePart") or Part:IsA("MeshPart") then
							Part.Velocity = Vector3.new(0, -9999, 0);
						end;
					end;
					RunService.RenderStepped:Wait()
					for _, Part in Character:GetChildren() do
						if Part:IsA("BasePart") or Part:IsA("MeshPart") then
							Part.Velocity = OldVel;
						end;
					end;
				end);
			end;
		end;

		--// NoFall
		if Library.Flags.NoFall.Value and not IsFlying then
			local Origin = Root.Position;
			local Result = Workspace:Raycast(Origin, Vector3.new(0, -1000, 0), Globals.RaycastParams);

			if Result and Result.Distance > 10 then
				task.spawn(function()
					local OldVel = Root.Velocity;
					for _, Part in Character:GetChildren() do
						if Part:IsA("BasePart") or Part:IsA("MeshPart") then
							Part.Velocity = Vector3.new(0, 9999, 0);
						end;
					end;
					RunService.RenderStepped:Wait()
					for _, Part in Character:GetChildren() do
						if Part:IsA("BasePart") or Part:IsA("MeshPart") then
							Part.Velocity = OldVel;
						end;
					end;
				end);
			end;
		end;
	end;
end));

Log("Loaded threads.")
--#endregion Threads

--#region RunService
RunService.RenderStepped:Connect(LPH_NO_VIRTUALIZE(function(Delta)
	Globals.Delta = Delta 

	for Index, Thread in Threads.Input do 
		local Error = Thread:Run()
	end

	for Index, Thread in Threads.Entities do 
		local Error = Thread:Run()
	end

	for Index, Thread in Threads.Character do 
		local Error = Thread:Run()
	end

	for Index, Thread in Threads.Render do 
		local Error = Thread:Run()
	end
end))

Log("Loaded run service connections")
--#endregion RunService

--#region Hooks 
local Modules = ReplicatedStorage:FindFirstChild("Modules");
if Modules then 
	local VFX = require(Modules.VFXModule);
	local ItemsModule = require(Modules.Items);
	local RaycastUtil = require(Modules.RaycastUtil);
	local SoundModule = require(Modules.SoundModule)

	--// Bindable Events
	local HitEvent = Instance.new("BindableEvent", ReplicatedStorage.ClientSignals);
	local TracerEvent = Instance.new("BindableEvent", ReplicatedStorage.ClientSignals);

	TracerEvent.Event:Connect(function(Origin, Destination, IsEnemy)
		local Color = (not IsEnemy and Library.Flags.TracerColor.Value[1]) or Library.Flags.EnemyTracerColor.Value[1]
		local TracerModel = Instance.new("Model", Workspace)
		TracerModel.Name = "TracerModel"

		--// Attachments
		local function CreateAnchorPart(position)
			local part = Instance.new("Part")
			part.Name = "Anchor"
			part.Size = Vector3.new(0.0001, 0.0001, 0.0001)
			part.Position = position
			part.Anchored = true
			part.CanCollide = false
			part.CanQuery = false
			part.Transparency = 1
			part.Parent = TracerModel
			return part
		end

		local Part0 = CreateAnchorPart(Origin)
		local Part1 = CreateAnchorPart(Origin)

		local Attachment0 = Instance.new("Attachment", Part0)
		local Attachment1 = Instance.new("Attachment", Part1)

		--// Beam setup
		local Beam = Instance.new("Beam")
		Beam.Name = "MainBeam"
		Beam.Attachment0 = Attachment0
		Beam.Attachment1 = Attachment1
		Beam.FaceCamera = true
		Beam.Color = ColorSequence.new({
			ColorSequenceKeypoint.new(0.0, Color),
			ColorSequenceKeypoint.new(0.5, Color3.new(1, 1, 1)),
			ColorSequenceKeypoint.new(1.0, Color),
		})
		Beam.Width0 = 0.3
		Beam.Width1 = 0.3
		Beam.LightEmission = 1
		Beam.LightInfluence = 0
		Beam.Brightness = Library.Flags.TracerBrightness.Value
		Beam.Texture = "rbxassetid://12788927812"
		Beam.TextureLength = 10
		Beam.TextureMode = Enum.TextureMode.Wrap
		Beam.TextureSpeed = 1
		Beam.Parent = TracerModel
		local TextureType = Library.Flags.BeamTexture.Value
		local Beam2, Beam3

		if TextureType == "Lightning" then
			Beam.Transparency = NumberSequence.new({
				NumberSequenceKeypoint.new(0, 0),
				NumberSequenceKeypoint.new(1, 0)
			})
			Beam.Texture = "rbxassetid://12781800668"
			Beam.TextureLength = 4
			Beam.TextureSpeed = 10
			Beam.Width0 = 0.5
			Beam.Width1 = 0.5

			local SpeedTween = TweenService:Create(Beam, TweenInfo.new(0.6, Enum.EasingStyle.Quad, Enum.EasingDirection.InOut, 2, true), {
				TextureSpeed = 2
			})
			SpeedTween:Play()
		elseif TextureType == "Dark" then
			Beam.Texture = "rbxassetid://12781848822"
			Beam.TextureLength = 20
			Beam.TextureSpeed = 0.9
			Beam.TextureMode = Enum.TextureMode.Static
			Beam.LightInfluence = 1
			Beam.LightEmission = 0.25
			Beam.Width0 = 0.5
			Beam.Width1 = 0.5

			Beam2 = Beam:Clone()
			Beam2.Name = "DarkBeam2"
			Beam2.Parent = TracerModel
			Beam2.Attachment0 = Attachment0
			Beam2.Attachment1 = Attachment1

			Beam3 = Beam:Clone()
			Beam3.Name = "DarkBeam3"
			Beam3.Parent = TracerModel
			Beam3.Attachment0 = Attachment0
			Beam3.Attachment1 = Attachment1
		end


		local ReferenceDistance = 30
		local ReferenceTime = ReferenceDistance / Library.Flags.ReferenceTime.Value
		local Distance = (Destination - Origin).Magnitude
		local TravelTime = (Distance / ReferenceDistance) * ReferenceTime

		local MoveTween = TweenService:Create(Part1, TweenInfo.new(TravelTime, Enum.EasingStyle.Linear), {
			Position = Destination
		})
		MoveTween:Play()

		local PulseTween = TweenService:Create(Beam, TweenInfo.new(0.1, Enum.EasingStyle.Sine, Enum.EasingDirection.InOut, 2, true), {
			Width0 = 0.35,
			Width1 = 0.35
		})
		PulseTween:Play()

		Delay(Library.Flags.TracerLifetime.Value, function()
			local FadeTween = TweenService:Create(Beam, TweenInfo.new(0.5, Enum.EasingStyle.Quint), {
				Width0 = 0,
				Width1 = 0,
				TextureSpeed = 0,
				Brightness = 0
			})
			FadeTween:Play()

			if Beam2 and Beam3 then
				local Fade2 = TweenService:Create(Beam2, TweenInfo.new(0.5, Enum.EasingStyle.Quint), {
					Width0 = 0,
					Width1 = 0,
					TextureSpeed = 0,
					Brightness = 0
				})
				local Fade3 = TweenService:Create(Beam3, TweenInfo.new(0.5, Enum.EasingStyle.Quint), {
					Width0 = 0,
					Width1 = 0,
					TextureSpeed = 0,
					Brightness = 0
				})
				Fade2:Play()
				Fade3:Play()
			end

			FadeTween.Completed:Wait()
			TracerModel:Destroy()
		end)
	end)

	HitEvent.Event:Connect(LPH_NO_VIRTUALIZE(function(HitData)
		if Library.Flags.Hitmarkers.Value then
			local HitPart = HitData[1];
			local HitPos = HitData[2];
			local HitMaterial = HitData[4];

			if HitMaterial == Enum.Material.Plastic then 
				Visuals.CreateHitmarker(HitPart, HitPos);
			end;
		end;
	end));

	local RaidEvent = Instance.new("BindableEvent", ReplicatedStorage.ClientSignals);
	RaidEvent.Event:Connect(LPH_NO_VIRTUALIZE(function(Type, CFrame) 
		local Time = tick();

		local Part = Instance.new("Part", CoreGui.Raids);
		Part.CanCollide = false;
		Part.CanQuery = false;
		Part.CanTouch = false;
		Part.Transparency = 1;
		Part.CFrame = CFrame; 
		Part.Name = Type;

		local StartedAt = Instance.new("IntValue", Part);
		StartedAt.Name = "StartedAt";
		StartedAt.Value = Time
		Part:SetAttribute("StartedAt", Time);
		Part:SetAttribute("Type", Type);

		Delay(600, function() 
			Part:Destroy();
		end);

		if Library.Flags.RaidNotifications.Value then
			local Pos = CFrame.p
			local Coordinates = tostring(math.floor(Pos.X)) .. ", ".. tostring(math.floor(Pos.Y)) ..", ".. tostring(math.floor(Pos.Z))
			Library:Notify("A potential raid has started using "..Type.. " at "..Coordinates, 10, Library.Flags.RaidsMiscColor.Value[1])
		end;
	end));
	--

	--// Hooks
	local InitHooks = LPH_JIT_MAX(function()
		local CreateProjectile; CreateProjectile = hookfunction(VFX.CreateProjectile, LPH_NO_UPVALUES(function(self, ...)
			local Args = {...}

			local Traceback = debug.traceback();
			if Traceback:find("ViewmodelController") and Args[1].StepFunction ~= "FakeStepFunc" and Args[1].HitFunction ~= "FakeHitFunc" and not tostring(Args[1].HitFunction):find("Ignore") then
				if debug.isvalidlevel(3) then 
					local HitFunction; HitFunction = Args[1].HitFunction; 
					Args[1].HitFunction = function(...)
						local Arguments = {...};

						HitEvent:Fire(Arguments)
						return HitFunction(...)
					end;

					local Stack = debug.getstack(3);
					local Recoil = rawget(Stack, 25);

					if Recoil and typeof(Recoil) == "table" and rawget(Recoil, "FinishStart") and rawget(Recoil, "RecoilStart") and rawget(Recoil, "RecoilFinish") and Library.Flags.RemoveRecoil.Value then 
						local RecoilStart = Recoil.RecoilStart
						local RecoilFinish = Recoil.RecoilFinish
						Recoil.RecoilStart = function(...)
							--local X, Y = RecoilStart(...)
							return 0, 0
						end

						Recoil.RecoilFinish = function(...)
							--local X, Y = RecoilFinish(...)
							return 0, 0
						end

						Recoil.Shake.X = {0, 0}
						Recoil.Shake.Y = {0, 0}
					end;

					local CameraStack = rawget(Stack, 45);
					local FlashpartStack = rawget(Stack, 51);
					local HRPStack = rawget(Stack, 52);
					local MouseHitStack = rawget(Stack, 52)

					local SpreadStack = rawget(Stack, 62);

					if CameraStack and FlashpartStack and HRPStack and MouseHitStack and EntityClass.TargetPart and Library.Flags.AimbotMode.Value == "Silent" then 
						local HitPosition = EntityClass.TargetPart.CFrame.p;
						local CameraPosition = CameraStack.p;

						if Library.Flags.InstantBullet.Value then
							local Speed, Gravity = Args[1].Speed, Args[1].Gravity
							local Distance = (Camera.CFrame.Position - HitPosition).Magnitude
							local TimeToHit = Distance / Speed

							local G = Gravity * -195
							local Drop = -0.5 * G * TimeToHit * TimeToHit
							if tostring(Drop):find("nan") then Drop = 0 end

							HitPosition = HitPosition + Vector3.new(0, Drop, 0)
						end

						local FakeCameraCFrame = CFrame.new(CameraPosition, HitPosition)
						local FakeHRPCFrame = CFrame.new(HRPStack.p, HitPosition);

						local OriginalFlashOffset = FlashpartStack - CameraPosition
						local NewFlashpartPosition = CFrame.new(FlashpartStack, HitPosition).p

						if EntityClass.ManipulatedPosition then 
							NewFlashpartPosition = CFrame.new(EntityClass.ManipulatedPosition, HitPosition).p;

							local FlashpartOffsetCamera = CameraPosition - FlashpartStack;
							local FlashpartOffsetHRP = HRPStack.p - FlashpartStack;

							local NewCameraPos = NewFlashpartPosition + FlashpartOffsetCamera
							local NewHRPPos = NewFlashpartPosition + FlashpartOffsetHRP

							FakeCameraCFrame = CFrame.new(NewCameraPos, HitPosition);
							FakeHRPCFrame = CFrame.new(NewHRPPos, HitPosition);
						end; 

						debug.setstack(3, 45, FakeCameraCFrame);
						debug.setstack(3, 54, HitPosition);
						debug.setstack(3, 52, FakeHRPCFrame)
						debug.setstack(3, 51, NewFlashpartPosition)
					end;

					if Library.Flags.ShootOnTP.Value and Library.Flags["Teleport Activation"].Active then 
						Client.Character.HumanoidRootPart.CFrame = Mouse.Hit;
					end;
				end;

				if Library.Flags.InstantBullet.Value then 
					Args[1].Speed = 9e9;
				end;

				if EntityClass.TargetPart and Library.Flags.AimbotMode.Value == "Silent" then 
					local HitPosition = EntityClass.TargetPart.CFrame.p;
					local Origin = Args[1].Position; 

					local Direction = (HitPosition - Origin).Unit
					local CorrectedPosition = CFrame.new(Origin, HitPosition).Position

					if EntityClass.ManipulatedPosition then 
						Direction = (HitPosition - EntityClass.ManipulatedPosition).Unit; 
						CorrectedPosition = CFrame.new(EntityClass.ManipulatedPosition, HitPosition).p;
					end;

					Args[1].Position = CorrectedPosition

					if Args[1].PositionFirst then 
						Args[1].PositionFirst = CorrectedPosition
					end;

					Args[1].DirectionFirst = Direction
					Args[1].Direction = Direction

					Globals.BulletOrigin = CorrectedPosition;
				end;
			end;

			task.spawn(function()
				if Library.Flags.BulletTracers.Value and (Args[1].Position - Camera.CFrame.Position).Magnitude < 1200 then
					local IsEnemy = (
						Args[1].StepFunction == "FakeStepFunc" or
							Args[1].HitFunction == "FakeHitFunc" or
							tostring(Args[1].HitFunction):find("Ignore")
					)

					if IsEnemy and not Library.Flags.ShowEnemyTracers.Value then 
						return 
					end;

					local Ray = Workspace:Raycast(
						Args[1].Position,
						Args[1].Direction * Args[1].MaxRange,
						Globals.RaycastParams
					)

					if Ray and Ray.Position then
						TracerEvent:Fire(Args[1].Position, Ray.Position, IsEnemy)
					end
				end
			end)
			return CreateProjectile(self, unpack(Args));
		end));

		Log("Initialized projectiles.")

		local CreateExplosion; CreateExplosion = hookfunction(VFX.CreateExplosion, LPH_NO_UPVALUES(function(...) 
			local Arguments = {...};

			local Type = tostring(Arguments[5]);
			local CFrame = Arguments[2];

			task.spawn(function() RaidEvent:Fire(Type, CFrame) end)

			return CreateExplosion(...)
		end));

		Log("Initialized raids")

		local OldRaycast; OldRaycast = hookfunction(RaycastUtil.Raycast, LPH_NO_UPVALUES(function(self, ...) 
			local Arguments = {...};

			if not checkcaller() then 
				local Traceback = debug.traceback();

				if Traceback and Traceback:find("ViewmodelController") and Library.Flags.Reach.Value then
					Arguments[2] = Arguments[2] * 10
				end; 

				if Library.Flags.PerfectFarm.Value then 
					local Output = {OldRaycast(self, ...)}
					local HitInstance  = Output[1]
					local HitPosition = Output[2]

					if not HitInstance or typeof(HitInstance) ~= "Instance" then
						return unpack(Output)
					end

					if not HitPosition or typeof(HitPosition) ~= "Vector3" then
						return unpack(Output)
					end

					local Model = HitInstance.Parent

					if not Model or (not Model:IsA("Model")) then
						return unpack(Output)
					end

					local Folder = Model.Parent

					if Folder and (Folder.Name == "Trees" or Folder.Name == "Nodes") and Folder:IsA("Folder") then
						local CriticalPart = Model:FindFirstChild("NodeSpark") or Model:FindFirstChild("TreeX")
						if CriticalPart and typeof(CriticalPart) == "Instance" and CriticalPart:IsA("Model") and CriticalPart.PrimaryPart then
							Output[1] = CriticalPart.PrimaryPart
							return unpack(Output)
						end;
					end;
				end;
			end;
			return OldRaycast(self, unpack(Arguments));
		end))   

		Log("Initialized raycast")

		local ToggleFootstep; ToggleFootstep = hookfunction(SoundModule.ToggleFootstep, LPH_NO_UPVALUES(function(...) 
			local Arguments = {...};

			if Library.Flags.SilentStep.Value and Arguments[3] then 
				return SoundModule:StopSound(Arguments[3])
			end;

			return ToggleFootstep(...);
		end));    

		local PlaySound; PlaySound = hookfunction(SoundModule.PlaySound, LPH_NO_UPVALUES(function(...) 
			local Arguments = {...};
			if Library.Flags.SilentStep.Value and Arguments[2] and Arguments[2].Name == "WalkWater" then 
				return SoundModule:StopSound(Arguments[2]);
			end;

			return PlaySound(...)
		end));

		Log("Initialized sounds")
		Log("Primary hooks initialized!")
	end);

	InitHooks();
	--

	local HooksOnCharacterAdded = LPH_JIT_MAX(function()
		Globals.QuickStackFunctions = {};
		for _, Function in getgc(false) do 

			if type(Function) ~= "function" then continue end 
			if not islclosure(Function) then continue end; 
			if isexecutorclosure(Function) then continue end; 
			if isfunctionhooked(Function) then continue end; 

			local Constants = debug.getconstants(Function); 
			local Upvalues = debug.getupvalues(Function)
			local Info = debug.getinfo(Function); 
			local Source = Info.source; 

			if Source:find("ViewmodelController") then 
				if table.find(Constants, "CameraOffset") then 
					local Old; Old = hookfunction(Function, LPH_NO_UPVALUES(function(...) 
						if Library.Flags.RemoveCameraBobbing.Value then 
							return 
						end; 

						return Old(...)
					end))
				end;

				if table.find(Constants, "Landed") then 
					local Old; Old = hookfunction(Function, LPH_NO_UPVALUES(function(OldState, NewState) 
						if Library.Flags.AlwaysGrounded.Value then 
							OldState = Enum.HumanoidStateType.Running; 
							NewState = Enum.HumanoidStateType.Running; 
						end;

						return Old(OldState, NewState)
					end));
				end;

                        -- yea followed ur coding style aswell
                        if table.find(Constants, "CreateBlood") then
                              for index, value in pairs(Upvalues) do
                                    if type(value) == "function" and debug.info(value, "s"):find("AssetContainer") then
                                          Globals.VMNetworkPointer = value;
                                          break;
                                    end;
                              end;

                        end;

			end;

			if Source:find("InventoryController") then 
				local Upvalues = debug.getupvalues(Function);
				if type(Upvalues[1]) == "table" and type(Upvalues[2]) == "table" and type(Upvalues[3]) == "table" then 
					local Old; Old = hookfunction(Function, LPH_NO_UPVALUES(function()
						local InventoryTable, _, _2 = Old() 

						local Toolbar = InventoryTable.Toolbar;
						if Toolbar and Library.Flags.SkinChanger.Value then 
							for ItemIndex, ItemData in Toolbar do 

								if type(ItemData) ~= "table" then 
									continue 
								end;

								local ItemName = ItemsModule[ItemData.ID].Name;
								local SKIN = Library.Flags["EnableSkin_"..ItemName]
								if SKIN and SKIN.Value then 
									local ClientSkin = Library.Flags["Skin_"..ItemName].Value;
									ItemData.Skin = ClientSkin;
								else 
									continue
								end;
							end;
						end;

						return InventoryTable, _, _2 
					end));
				end;

				if Constants[1] == "ArmorEquip" and Constants[5] == "GetAttribute" then 
					if Library.Flags.InstantLoot.Value then 
						debug.setconstant(Function, 19, 0) -- 0.9 
						debug.setconstant(Function, 20, 0) -- 0.3
						debug.setconstant(Function, 21, 0) -- 0.1
					end;
					table.insert(Globals.QuickStackFunctions, Function)
				end
			end;

			if Source:find("StateController") then 
				if table.find(Constants, "Forward") then 
					if type(Upvalues[1]) == "table" and (Upvalues[1].Forward == false or Upvalues[1].Forward == true) then 
						Globals.DirectionTable = debug.getupvalue(Function, 1)
					end
				end;
			end;

			if Info.source:find("BuildController") then 
				if type(Upvalues[16]) == "function" then 
					local BuildEvent = debug.getupvalue(Function, 16);
					Globals.BuildingNetworkPointer = BuildEvent;
				end
			end;

		end;

		repeat task.wait() until Client.Character ~= nil 
		local Character = Client.Character; 
		local StateController = Character:WaitForChild("StateController", 5);

		if StateController then 
			StateController:GetAttributeChangedSignal("IsSprint"):Connect(function()
				if Library.Flags.Omnisprint.Value and UserInputService:IsKeyDown(Enum.KeyCode.LeftShift) then 
					StateController:SetAttribute("IsSprint", true);
				end;
			end);

			StateController:GetAttributeChangedSignal("Direction"):Connect(function()
				if Library.Flags.Omnisprint.Value and UserInputService:IsKeyDown(Enum.KeyCode.LeftShift) then 
					StateController:SetAttribute("Direction", "Forward");
				end;
			end);
		end;
	end);

	repeat task.wait() until Client.Character

	HooksOnCharacterAdded();

	Client.CharacterAdded:Connect(function()
		task.wait(3);
		HooksOnCharacterAdded();
	end);
end;
Log("All hooks loaded!")
--#endregion Hooks

Features & Information

MOST LIKELY PATCHED, DONT KNOW BUT ITS OUTDATED. MANUPILATION AND SILENT AIM AND BASIC STUFF I HAVE THE OPEN SOURCE LMK IF U WANT IT. ALL FROM AMOUNGUSHOOK https://discord.gg/qfBXaxqyBE

Community Comments (11)

cseaturtle2cseaturtle2Aug 8, 2025

cost robux to play the game. I wouldnt use this script you'll just be banned. I bought the game just to test the script out. Its decent but if you dont want to spend your money on alt accounts just to get banned, dont use scripts on paid games

depsodepsoadminAug 8, 2025

source pls 🥺🥺🥺🥺🥺🥺🥺🥺🥺🥺🥺🥺🥺

crlixcrlixAug 8, 2025

@depso yes

draakje987draakje987Aug 10, 2025

can i have it too

Replying to @draakje987
crlixcrlixAug 17, 2025

i would but it wouldnt fit

Replying to @crlix
akselzakiakselzakiAug 18, 2025

@altacc34123 lemme get source

Replying to @akselzaki
crlixcrlixAug 19, 2025

@akselzaki its in the script js scrtol down

hubeeehubeeeAug 21, 2025

doesnt work at all on velocity.

PINKARdenPINKARdenSep 5, 2025

Deosnt Work on Volcano

crlixcrlixSep 5, 2025

this script is probably outdated and doesnt work, just use amoungushook its better than most scripts.

sigmaktozasigmaktozaFeb 21, 2026

топовый софт всем советую! забанило когда заинжектил ваще бомба

More Scripts for Fallen Survival🏹