local a=loadstring(game:HttpGet("https://github.com/dawid-scripts/Fluent/releases/latest/download/main.lua"))()local b=loadstring(game:HttpGet("https://raw.githubusercontent.com/dawid-scripts/Fluent/master/Addons/SaveManager.lua"))()local c=loadstring(game:HttpGet("https://raw.githubusercontent.com/dawid-scripts/Fluent/master/Addons/InterfaceManager.lua"))()local d=game:GetService("Players")local e=game:GetService("TweenService")local f=game:GetService("HttpService")local g=game:GetService("UserInputService")local h=game:GetService("RunService")local i=game:GetService("ReplicatedStorage")local i=game:GetService("SoundService")local i=game:GetService("GuiService")local j=game:GetService("ContextActionService")local j=game:GetService("StarterGui")local k=game:GetService("StarterPlayer")local k=game:GetService("StarterPack")local k=game:GetService("TextChatService")local k=game:GetService("VoiceChatService")local k=game:GetService("VirtualInputManager")local k=game:GetService("LocalizationService")local k=game:GetService("DataStoreService")local k=game:GetService("BadgeService")local k=game:GetService("MarketplaceService")local k=game:GetService("AvatarEditorService")local l=game:GetService("PlayerScripts")local l=game:GetService("PlayerGui")local l=game:GetService("CoreGui")local m=game:GetService("GamePassService")local m=game:GetService("ContentProvider")local m=game:GetService("InsertService")local m=game:GetService("TeleportService")local m=game:GetService("CollectionService")local m=game:GetService("AnalyticsService")local m=game:GetService("LogService")local m=game:GetService("PathfindingService")local m=game:GetService("SocialService")local m=game:GetService("NotificationService")local m=game:GetService("DebuggerManager")local m=game:GetService("PublishService")local m=game:GetService("FriendService")local m=game:GetService("PermissionsService")local m=game:GetService("PluginGuiService")local m=game:GetService("ScriptContext")local m=game:GetService("Selection")local m=game:GetService("TestService")local m=game:GetService("AdService")local m=game:GetService("PlayerList")local m=game:GetService("Camera")local m=game:GetService("NetworkClient")local m=game:GetService("Mouse")local m=game:GetService("TextService")local m=game:GetService("Lighting")local m=a:CreateWindow({Title="ZaZa Hub - v1.2.5",SubTitle="by Brxyk_ #berkcan61",TabWidth=160,Size=UDim2.fromOffset(580,460),Acrylic=false,Theme="Dark",MinimizeKey=Enum.KeyCode.LeftControl})local n={ESP=m:AddTab({Title="ESP",Icon="eye"}),Player=m:AddTab({Title="Player",Icon="user"}),Teleport=m:AddTab({Title="Teleport",Icon="locate-fixed"}),MiscTab=m:AddTab({Title="Misc",Icon="wrench"}),UNC=m:AddTab({Title="UNC",Icon="link"}),Emote=m:AddTab({Title="Emote",Icon="smile"}),Settings=m:AddTab({Title="Settings",Icon="settings"}),Credits=m:AddTab({Title="Credits",Icon="info"})}m:SelectTab(1)wait(0.2)local o=a.Options;_G.DebugSettings=_G.DebugSettings or{Enabled=false}function logDebug(...)if _G.DebugSettings.Enabled then print("[Debug]",...)end end;local o=workspace.CurrentCamera;local p=game.Players.LocalPlayer;if not Drawing or not Drawing.new then warn("[ESP] Drawing API is not available in this exploit!")return end;local q={}q.Settings={BoxColor=Color3.fromRGB(0,255,0),Thickness=2,Scale=15,TeamCheck=false,Enabled=false,BoxFilled=false,BoxTransparency=0.5,NameEnabled=false,NameColor=Color3.fromRGB(255,255,255),NameSize=14,NameOutline=true,NameOutlineColor=Color3.fromRGB(0,0,0),NameTransparency=1,NameCenter=true,HealthBarEnabled=false,DistanceEnabled=false,DistanceColor=Color3.fromRGB(255,255,255),DistanceSize=14,DistanceTransparency=1,DistanceOutline=true,DistanceOutlineColor=Color3.fromRGB(0,0,0),DistanceUseMeters=false,DistanceScale=1,LinesEnabled=false,LineColor=Color3.fromRGB(0,255,0),LineThickness=1,LineTransparency=1,LineMaxDistance=0,LineShowWhenOffscreen=false}q.DrawFunctions={}q.Boxes={}q.Names={}q.Scales={}q.HealthBarsBG={}q.HealthBarsFG={}q.Distances={}q.Lines={}function q:AddESP(a)if self.DrawFunctions[a]then return end;local b=Drawing.new("Square")b.Color=self.Settings.BoxColor;b.Thickness=self.Settings.Thickness;b.Filled=self.Settings.BoxFilled;b.Transparency=self.Settings.BoxTransparency;b.Visible=false;self.Boxes[a]=b;self.Scales[a]=self.Settings.Scale;self.DrawFunctions[a]=function()local c=a.Character;if c and c:FindFirstChild("HumanoidRootPart")and c:FindFirstChild("Humanoid")and c.Humanoid.Health>0 then if self.Settings.TeamCheck and a.Team==p.Team then b.Visible=false;return end;local c=c.HumanoidRootPart;local d=workspace.CurrentCamera;local c,d=d:WorldToViewportPoint(c.Position)if d and self.Settings.Enabled then local a=self.Scales[a]or self.Settings.Scale;local d=6*a;local a=4*a;b.Size=Vector2.new(a,d)b.Position=Vector2.new(c.X-a/2,c.Y-d/2)b.Visible=true else b.Visible=false end else b.Visible=false end end;logDebug("[ESP] Added ESP box for player:",a.Name)end;function q:AddNameESP(a)if self.Names[a]then return end;local b=Drawing.new("Text")b.Text=a.Name;b.Color=self.Settings.NameColor;b.Size=self.Settings.NameSize;b.Center=self.Settings.NameCenter;b.Transparency=self.Settings.NameTransparency;b.Visible=false;b.Outline=true;b.OutlineColor=Color3.fromRGB(0,0,0)self.Names[a]=b end;function q:AddHealthBar(a)local b=a.Character;if not b or not b:FindFirstChild("HumanoidRootPart")or not b:FindFirstChild("Humanoid")then if self.HealthBarsBG[a]then self.HealthBarsBG[a].Visible=false end;if self.HealthBarsFG[a]then self.HealthBarsFG[a].Visible=false end;return end;local c=b.Humanoid;if c.Health<=0 then if self.HealthBarsBG[a]then self.HealthBarsBG[a].Visible=false end;if self.HealthBarsFG[a]then self.HealthBarsFG[a].Visible=false end;return end;if self.Settings.TeamCheck and a.Team==p.Team then if self.HealthBarsBG[a]then self.HealthBarsBG[a].Visible=false end;if self.HealthBarsFG[a]then self.HealthBarsFG[a].Visible=false end;return end;local d=workspace.CurrentCamera;local b,d=d:WorldToViewportPoint(b.HumanoidRootPart.Position)if not d or not self.Settings.Enabled or not self.Settings.HealthBarEnabled then if self.HealthBarsBG[a]then self.HealthBarsBG[a].Visible=false end;if self.HealthBarsFG[a]then self.HealthBarsFG[a].Visible=false end;return end;local d=self.Scales[a]or self.Settings.Scale;local e=6*d;local d=4*d;local f=4;local d=d;local g=b.X-d/2;local b=b.Y+e/2+4;local c=math.clamp(c.Health/c.MaxHealth,0,1)local e;if c>0.6 then e=Color3.fromRGB(0,255,0)elseif c>0.3 then local a=(c-0.3)/0.3;local b=Color3.fromRGB(255,165,0)local c=Color3.fromRGB(0,255,0)e=b:lerp(c,a)else e=Color3.fromRGB(255,0,0)end;if not self.HealthBarsBG[a]then self.HealthBarsBG[a]=Drawing.new("Square")self.HealthBarsBG[a].Filled=true;self.HealthBarsBG[a].Transparency=0.6 end;local h=self.HealthBarsBG[a]h.Color=Color3.fromRGB(30,30,30)h.Size=Vector2.new(d,f)h.Position=Vector2.new(g,b)h.Visible=true;if not self.HealthBarsFG[a]then self.HealthBarsFG[a]=Drawing.new("Square")self.HealthBarsFG[a].Filled=true;self.HealthBarsFG[a].Transparency=0.9 end;local a=self.HealthBarsFG[a]a.Color=e;a.Size=Vector2.new(d*c,f)a.Position=Vector2.new(g,b)a.Visible=true end;function q:AddDistanceESP(a)if self.Distances[a]then return end;local b=Drawing.new("Text")b.Text=""b.Color=self.Settings.DistanceColor or Color3.new(1,1,1)b.Size=self.Settings.DistanceSize or 14;b.Center=true;b.Transparency=self.Settings.DistanceTransparency or 1;b.Outline=self.Settings.DistanceOutline or true;b.OutlineColor=self.Settings.DistanceOutlineColor or Color3.new(0,0,0)b.Visible=false;self.Distances[a]=b end;function q:AddLineESP(a)if self.Lines==nil then self.Lines={}end;if self.Lines[a]then return end;local b=Drawing.new("Line")b.Color=self.Settings.BoxColor or Color3.fromRGB(0,255,0)b.Thickness=1.5;b.Transparency=1;b.Visible=false;self.Lines[a]=b end;function q:UpdateLineESP(a)if not self.Lines or not self.Lines[a]then return end;local b=self.Lines[a]local c=a.Character;if self.Settings.TeamCheck and a.Team==p.Team then b.Visible=false;return end;if not c then b.Visible=false;return end;local a=c:FindFirstChild("HumanoidRootPart")local c=c:FindFirstChildOfClass("Humanoid")if not a or not c or c.Health<=0 then b.Visible=false;return end;local c=workspace.CurrentCamera;if not c or not self.Settings.Enabled then b.Visible=false;return end;local d,e=c:WorldToViewportPoint(a.Position)local a=(p.Character and p.Character:FindFirstChild("HumanoidRootPart"))and(p.Character.HumanoidRootPart.Position-a.Position).Magnitude or math.huge;local f=tonumber(self.Settings.LineMaxDistance)or 0;local a=(e or self.Settings.LineShowWhenOffscreen)and(f==0 or a<=f)if not a then b.Visible=false;return end;b.From=Vector2.new(c.ViewportSize.X/2,c.ViewportSize.Y)b.To=Vector2.new(d.X,d.Y)b.Color=self.Settings.LineColor or self.Settings.BoxColor or Color3.fromRGB(0,255,0)b.Thickness=self.Settings.LineThickness or 1;b.Transparency=self.Settings.LineTransparency or 1;b.Visible=true end;function q:UpdateNameESP(a)local b=self.Names[a]local c=self.Boxes[a]local d=a.Character;if not b or not c or not d then return end;if d:FindFirstChild("HumanoidRootPart")and d:FindFirstChild("Humanoid")and d.Humanoid.Health>0 then if self.Settings.TeamCheck and a.Team==p.Team then b.Visible=false;return end;local a=workspace.CurrentCamera;local a,d=a:WorldToViewportPoint(d.HumanoidRootPart.Position)if d and self.Settings.Enabled and self.Settings.NameEnabled then local c=c.Size.Y;b.Position=Vector2.new(a.X,a.Y-c/2-18)b.Visible=true else b.Visible=false end else b.Visible=false end end;function q:UpdateDistanceESP(a)local b=self.Distances[a]local c=a.Character;local d=game.Players.LocalPlayer;if not b or not c or not d then return end;local e=c:FindFirstChild("HumanoidRootPart")local c=c:FindFirstChild("Humanoid")if not e or not c or c.Health<=0 then b.Visible=false;return end;if self.Settings.TeamCheck and a.Team==d.Team then b.Visible=false;return end;local c=workspace.CurrentCamera;if not c then b.Visible=false;return end;local d,f=c:WorldToViewportPoint(e.Position)if not f or not self.Settings.Enabled or not self.Settings.DistanceEnabled then b.Visible=false;return end;local c=(e.Position-c.CFrame.Position).Magnitude;local c=self.Settings.DistanceUseMeters and(c*0.28)or c;local e=self.Settings.DistanceUseMeters and"m"or"studs"local a=(self.Scales and self.Scales[a])or self.Settings.DistanceScale or 1;local a=6*a/2+2;b.Text=string.format("%.0f %s",c,e)b.Position=Vector2.new(d.X,d.Y+a)b.Visible=true end;function q:RemoveESP(a)if self.Boxes and self.Boxes[a]then self.Boxes[a].Visible=false;self.Boxes[a]:Remove()self.Boxes[a]=nil;logDebug("[ESP] Removed ESP box for player:",a.Name)end;if self.DrawFunctions and self.DrawFunctions[a]then self.DrawFunctions[a]=nil end;if self.Names and self.Names[a]then self.Names[a].Visible=false;self.Names[a]:Remove()self.Names[a]=nil;logDebug("[ESP] Removed Name ESP for player:",a.Name)end;if self.NameFunctions and self.NameFunctions[a]then self.NameFunctions[a]=nil end;if self.HealthBarsBG and self.HealthBarsBG[a]then self.HealthBarsBG[a].Visible=false;self.HealthBarsBG[a]:Remove()self.HealthBarsBG[a]=nil;logDebug("[ESP] Removed HealthBar Background for player:",a.Name)end;if self.HealthBarsFG and self.HealthBarsFG[a]then self.HealthBarsFG[a].Visible=false;self.HealthBarsFG[a]:Remove()self.HealthBarsFG[a]=nil;logDebug("[ESP] Removed HealthBar Foreground for player:",a.Name)end;if self.HealthFunctions and self.HealthFunctions[a]then self.HealthFunctions[a]=nil end;if self.Distances and self.Distances[a]then self.Distances[a].Visible=false;self.Distances[a]:Remove()self.Distances[a]=nil;logDebug("[ESP] Removed Distance ESP for player:",a.Name)end;if self.Lines and self.Lines[a]then self.Lines[a].Visible=false;self.Lines[a]:Remove()self.Lines[a]=nil;logDebug("[ESP] Removed Line ESP for player:",a.Name)end end;function q:Enable()if self.Settings.Enabled then return end;self.Settings.Enabled=true;logDebug("[ESP] Enabled")end;function q:Disable()if not self.Settings.Enabled then return end;self.Settings.Enabled=false;for a,a in pairs(self.Boxes)do a.Visible=false end;for a,a in pairs(self.Names)do a.Visible=false end;for a,a in pairs(self.HealthBarsBG)do a.Visible=false end;for a,a in pairs(self.HealthBarsFG)do a.Visible=false end;for a,a in pairs(self.Distances)do a.Visible=false end;for a,a in pairs(self.Lines)do a.Visible=false end;logDebug("ESP disabled")end;game.Players.PlayerAdded:Connect(function(a)a.CharacterAdded:Connect(function()wait(0.5)q:AddESP(a)q:AddNameESP(a)q:AddHealthBar(a)q:AddDistanceESP(a)q:AddLineESP(a)end)end)for a,a in pairs(game.Players:GetPlayers())do if a~=p then if a.Character and a.Character:FindFirstChild("HumanoidRootPart")then q:AddESP(a)q:AddNameESP(a)q:AddHealthBar(a)q:AddDistanceESP(a)q:AddLineESP(a)else a.CharacterAdded:Connect(function()wait(0.5)q:AddESP(a)q:AddNameESP(a)q:AddHealthBar(a)q:AddDistanceESP(a)q:AddLineESP(a)end)end end end;game:GetService("RunService").RenderStepped:Connect(function()if not q.Settings.Enabled then return end;local a=game.Players.LocalPlayer;local a=a.Character and a.Character:FindFirstChild("HumanoidRootPart")local a=q.Settings.DistanceEnabled;local b=q.Settings.HealthBarEnabled;local c=q.Settings.LinesEnabled;local d=workspace.CurrentCamera.ViewportSize;for d,e in pairs(q.DrawFunctions)do local e,f=pcall(e)if not e then warn("[ESP] Error drawing box for "..d.Name..": "..f)end;local e,f=pcall(function()q:UpdateNameESP(d)end)if not e then warn("[ESP] Error drawing name for "..d.Name..": "..f)end;if a then local a,b=pcall(function()q:UpdateDistanceESP(d)end)if not a then warn("[ESP] Error drawing distance for "..d.Name..": "..b)end else if q.Distances[d]then q.Distances[d].Visible=false end end;if b then local a,b=pcall(function()q:AddHealthBar(d)end)if not a then warn("[ESP] Error drawing health bar for "..d.Name..": "..b)end else if q.HealthBarsBG[d]then q.HealthBarsBG[d].Visible=false end;if q.HealthBarsFG[d]then q.HealthBarsFG[d].Visible=false end end;if c then local a,b=pcall(function()q:UpdateLineESP(d)end)if not a then warn("[ESP] Error drawing line for "..d.Name..": "..b)end else if q.Lines[d]then q.Lines[d].Visible=false end end end end)game.Players.PlayerAdded:Connect(function(a)q:AddESP(a)if q.Settings.NameEnabled then q:AddNameESP(a)end;if q.Settings.DistanceEnabled then q:AddDistanceESP(a)end;if q.Settings.LinesEnabled then q:AddLineESP(a)end end)game.Players.PlayerRemoving:Connect(function(a)q:RemoveESP(a)end)task.spawn(function()while true do if q.Settings.Enabled then for a,a in ipairs(game.Players:GetPlayers())do if a~=p then if not q.DrawFunctions[a]then q:AddESP(a)end;q.DrawFunctions[a]()if q.Settings.NameEnabled then if not q.Names[a]then q:AddNameESP(a)end;q:UpdateNameESP(a)end;if q.Settings.HealthBarEnabled then q:AddHealthBar(a)end;if q.Settings.DistanceEnabled then if not q.Distances[a]then q:AddDistanceESP(a)end;q:UpdateDistanceESP(a)end;if q.Settings.LinesEnabled then if not q.Lines[a]then q:AddLineESP(a)end;q:UpdateLineESP(a)end end end end;task.wait(0.01)end end)local function r(a)local b={aliceblue=Color3.fromRGB(240,248,255),antiquewhite=Color3.fromRGB(250,235,215),aqua=Color3.fromRGB(0,255,255),aquamarine=Color3.fromRGB(127,255,212),azure=Color3.fromRGB(240,255,255),beige=Color3.fromRGB(245,245,220),bisque=Color3.fromRGB(255,228,196),black=Color3.fromRGB(0,0,0),blanchedalmond=Color3.fromRGB(255,235,205),blue=Color3.fromRGB(0,0,255),blueviolet=Color3.fromRGB(138,43,226),brown=Color3.fromRGB(165,42,42),burlywood=Color3.fromRGB(222,184,135),cadetblue=Color3.fromRGB(95,158,160),chartreuse=Color3.fromRGB(127,255,0),chocolate=Color3.fromRGB(210,105,30),coral=Color3.fromRGB(255,127,80),cornflowerblue=Color3.fromRGB(100,149,237),cornsilk=Color3.fromRGB(255,248,220),crimson=Color3.fromRGB(220,20,60),cyan=Color3.fromRGB(0,255,255),darkblue=Color3.fromRGB(0,0,139),darkcyan=Color3.fromRGB(0,139,139),darkgoldenrod=Color3.fromRGB(184,134,11),darkgray=Color3.fromRGB(169,169,169),darkgreen=Color3.fromRGB(0,100,0),darkkhaki=Color3.fromRGB(189,183,107),darkmagenta=Color3.fromRGB(139,0,139),darkolivegreen=Color3.fromRGB(85,107,47),darkorange=Color3.fromRGB(255,140,0),darkorchid=Color3.fromRGB(153,50,204),darkred=Color3.fromRGB(139,0,0),darksalmon=Color3.fromRGB(233,150,122),darkseagreen=Color3.fromRGB(143,188,143),darkslateblue=Color3.fromRGB(72,61,139),darkslategray=Color3.fromRGB(47,79,79),darkturquoise=Color3.fromRGB(0,206,209),darkviolet=Color3.fromRGB(148,0,211),deeppink=Color3.fromRGB(255,20,147),deepskyblue=Color3.fromRGB(0,191,255),dimgray=Color3.fromRGB(105,105,105),dodgerblue=Color3.fromRGB(30,144,255),firebrick=Color3.fromRGB(178,34,34),floralwhite=Color3.fromRGB(255,250,240),forestgreen=Color3.fromRGB(34,139,34),fuchsia=Color3.fromRGB(255,0,255),gainsboro=Color3.fromRGB(220,220,220),ghostwhite=Color3.fromRGB(248,248,255),gold=Color3.fromRGB(255,215,0),goldenrod=Color3.fromRGB(218,165,32),gray=Color3.fromRGB(128,128,128),green=Color3.fromRGB(0,128,0),greenyellow=Color3.fromRGB(173,255,47),honeydew=Color3.fromRGB(240,255,240),hotpink=Color3.fromRGB(255,105,180),indianred=Color3.fromRGB(205,92,92),indigo=Color3.fromRGB(75,0,130),ivory=Color3.fromRGB(255,255,240),khaki=Color3.fromRGB(240,230,140),lavender=Color3.fromRGB(230,230,250),lavenderblush=Color3.fromRGB(255,240,245),lawngreen=Color3.fromRGB(124,252,0),lemonchiffon=Color3.fromRGB(255,250,205),lightblue=Color3.fromRGB(173,216,230),lightcoral=Color3.fromRGB(240,128,128),lightcyan=Color3.fromRGB(224,255,255),lightgoldenrodyellow=Color3.fromRGB(250,250,210),lightgray=Color3.fromRGB(211,211,211),lightgreen=Color3.fromRGB(144,238,144),lightpink=Color3.fromRGB(255,182,193),lightsalmon=Color3.fromRGB(255,160,122),lightseagreen=Color3.fromRGB(32,178,170),lightskyblue=Color3.fromRGB(135,206,250),lightslategray=Color3.fromRGB(119,136,153),lightsteelblue=Color3.fromRGB(176,196,222),lightyellow=Color3.fromRGB(255,255,224),lime=Color3.fromRGB(0,255,0),limegreen=Color3.fromRGB(50,205,50),linen=Color3.fromRGB(250,240,230),magenta=Color3.fromRGB(255,0,255),maroon=Color3.fromRGB(128,0,0),mediumaquamarine=Color3.fromRGB(102,205,170),mediumblue=Color3.fromRGB(0,0,205),mediumorchid=Color3.fromRGB(186,85,211),mediumpurple=Color3.fromRGB(147,112,219),mediumseagreen=Color3.fromRGB(60,179,113),mediumslateblue=Color3.fromRGB(123,104,238),mediumspringgreen=Color3.fromRGB(0,250,154),mediumturquoise=Color3.fromRGB(72,209,204),mediumvioletred=Color3.fromRGB(199,21,133),midnightblue=Color3.fromRGB(25,25,112),mintcream=Color3.fromRGB(245,255,250),mistyrose=Color3.fromRGB(255,228,225),moccasin=Color3.fromRGB(255,228,181),navajowhite=Color3.fromRGB(255,222,173),navy=Color3.fromRGB(0,0,128),oldlace=Color3.fromRGB(253,245,230),olive=Color3.fromRGB(128,128,0),olivedrab=Color3.fromRGB(107,142,35),orange=Color3.fromRGB(255,165,0),orangered=Color3.fromRGB(255,69,0),orchid=Color3.fromRGB(218,112,214),palegoldenrod=Color3.fromRGB(238,232,170),palegreen=Color3.fromRGB(152,251,152),paleturquoise=Color3.fromRGB(175,238,238),palevioletred=Color3.fromRGB(219,112,147),papayawhip=Color3.fromRGB(255,239,213),peachpuff=Color3.fromRGB(255,218,185),peru=Color3.fromRGB(205,133,63),pink=Color3.fromRGB(255,192,203),plum=Color3.fromRGB(221,160,221),powderblue=Color3.fromRGB(176,224,230),purple=Color3.fromRGB(128,0,128),red=Color3.fromRGB(255,0,0),rosybrown=Color3.fromRGB(188,143,143),royalblue=Color3.fromRGB(65,105,225),saddlebrown=Color3.fromRGB(139,69,19),salmon=Color3.fromRGB(250,128,114),sandybrown=Color3.fromRGB(244,164,96),seagreen=Color3.fromRGB(46,139,87),seashell=Color3.fromRGB(255,245,238),sienna=Color3.fromRGB(160,82,45),silver=Color3.fromRGB(192,192,192),skyblue=Color3.fromRGB(135,206,235),slateblue=Color3.fromRGB(106,90,205),slategray=Color3.fromRGB(112,128,144),snow=Color3.fromRGB(255,250,250),springgreen=Color3.fromRGB(0,255,127),steelblue=Color3.fromRGB(70,130,180),tan=Color3.fromRGB(210,180,140),teal=Color3.fromRGB(0,128,128),thistle=Color3.fromRGB(216,191,216),tomato=Color3.fromRGB(255,99,71),turquoise=Color3.fromRGB(64,224,208),violet=Color3.fromRGB(238,130,238),wheat=Color3.fromRGB(245,222,179),white=Color3.fromRGB(255,255,255),whitesmoke=Color3.fromRGB(245,245,245),yellow=Color3.fromRGB(255,255,0),yellowgreen=Color3.fromRGB(154,205,50)}local c="Custom Color"local d=math.huge;for b,e in pairs(b)do local a=math.sqrt((a.R-e.R)^2+(a.G-e.G)^2+(a.B-e.B)^2)if a0 then u.Velocity=a.Unit*s else u.Velocity=Vector3.new(0,0,0)end;v.CFrame=o.CFrame end)end;local function o()t=false;if u then u:Destroy()end;if v then v:Destroy()end end;wait(0.2)local t=n.Player:AddSection("Movement & Control")t:AddToggle("FlyToggle",{Title="Fly",Description="Toggles flying on/off",Default=false,Callback=function(a)if a then w()else o()end end})t:AddSlider("FlySpeedSlider",{Title="Flight speed",Description="Changes the flying speed",Default=50,Min=10,Max=500,Rounding=0,Callback=function(a)s=a end})t:AddSlider("SpeedSlider",{Title="Speed",Description="Changes the running speed",Default=16,Min=16,Max=500,Rounding=0,Callback=function(a)r=a;q.WalkSpeed=r end})local o=t:AddInput("JumpInput",{Title="Jump power",Default="50",Placeholder="Enter jump power",Numeric=true,Finished=false,Callback=function(a)q.JumpPower=tonumber(a)end})local o=nil;local q=nil;t:AddToggle("God Mode",{Title="God Mode",Description="Toggle Infinite Health on most games",Default=false,Callback=function(a)local b=d.LocalPlayer;if not b or not b.Character then warn("God Mode Error: player or character is nil.")return end;local c=workspace.CurrentCamera;local d=b.Character;local e=c.CFrame;local function f()local a=d:FindFirstChildWhichIsA("Humanoid")if not a then warn("God Mode Error: No Humanoid found.")return end;q=a:Clone()q.Name="GodHumanoid"q.Parent=d;b.Character=nil;q:SetStateEnabled(Enum.HumanoidStateType.FallingDown,false)q:SetStateEnabled(Enum.HumanoidStateType.Ragdoll,false)q:SetStateEnabled(Enum.HumanoidStateType.Dead,false)q.BreakJointsOnDeath=true;a:Destroy()b.Character=d;c.CameraSubject=q;c.CFrame=e;q.DisplayDistanceType=Enum.HumanoidDisplayDistanceType.None;local a=d:FindFirstChild("Animate")if a then a.Disabled=true;wait()a.Disabled=false end;q.Health=q.MaxHealth;o=h.Heartbeat:Connect(function()if q and q.Health0 then c.confidence=c.confidence+a;table.insert(c.matches,{type="Code",pattern=b,count=a})end end;for b,b in pairs(b.functions)do local a=select(2,string.gsub(a,b,""))if a>2 then c.confidence=c.confidence+math.floor(a/2)table.insert(c.matches,{type="Function",pattern=b,count=a})end end end end)return c end;local function d()local a={}for b,b in pairs(game:GetDescendants())do if b:IsA("RemoteEvent")or b:IsA("RemoteFunction")then table.insert(a,b)end end;return a end;local function e()a("πŸ” ZaZa Anti-Cheat Scanner v1.1")a("Scanning game: "..game.Name)local d=d()a("Found "..#d.." remotes")local b=b()a("Analyzing "..#b.." scripts")wait(2)local d={}local e=0;local f=-1;for g,g in pairs(b)do local c=c(g)if c.confidence>=3 then table.insert(d,{script=g,findings=c})end;e=e+1;local b=math.floor((e/#b)*100)if b~=f then f=b;a("Progress: "..b.."%")end;if e%50==0 then task.wait()end end;a("πŸ“Š Scan Results:")a("Total Scripts Analyzed: "..#b)a("Potential Anti-Cheat Systems Found: "..#d)if#d>0 then a("🚨 High Confidence Matches:")table.sort(d,function(a,b)return a.findings.confidence>b.findings.confidence end)for b,c in ipairs(d)do if b>15 then break end;a(c.script:GetFullName())a("Confidence Score: "..c.findings.confidence)for b,b in pairs(c.findings.matches)do if b.count then a("β€’ "..b.type..": "..b.pattern.." (x"..b.count..")")else a("β€’ "..b.type..": "..b.pattern)end end end end;a("βœ… Scan Complete!")end;e()end})local e=n.MiscTab:AddSection("Misc")e:AddButton({Title="Octo-Spy",Description="",Callback=function()loadstring(game:HttpGet("https://raw.githubusercontent.com/InfernusScripts/Octo-Spy/refs/heads/main/Main.lua"))end})e:AddButton({Title="Ketamine",Description="A fresh Roblox Remote Spy (not really, it supports more than that) with modern UI that you can (kinda) customise",Callback=function()loadstring(game:HttpGet("https://raw.githubusercontent.com/InfernusScripts/Ketamine/refs/heads/main/Ketamine.lua"))end})e:AddButton({Title="Explorer / Dex",Callback=function()loadstring(game:HttpGet("https://raw.githubusercontent.com/infyiff/backup/main/dex.lua"))()end})e:AddButton({Title="Audio Logger",Callback=function()aa=game:GetObjects("rbxassetid://01997056190")[1]aa.Parent=game.CoreGui;wait(0.2)GUI=aa.PopupFrame.PopupFrame;pos=0;ignore={"rbxasset://sounds/action_get_up.mp3","rbxasset://sounds/uuhhh.mp3","rbxasset://sounds/action_falling.mp3","rbxasset://sounds/action_jump.mp3","rbxasset://sounds/action_jump_land.mp3","rbxasset://sounds/impact_water.mp3","rbxasset://sounds/action_swim.mp3","rbxasset://sounds/action_footsteps_plastic.mp3"}GUI.Close.MouseButton1Click:connect(function()GUI:TweenSize(UDim2.new(0,360,0,0),"Out","Quad",0.5,true)wait(0.6)GUI.Parent:TweenSize(UDim2.new(0,0,0,20),"Out","Quad",0.5,true)wait(0.6)itemadded:Disconnect()aa:Destroy()end)local a=false;GUI.Minimize.MouseButton1Click:connect(function()if a==false then GUI:TweenSize(UDim2.new(0,360,0,20),"Out","Quad",0.5,true)a=true else GUI:TweenSize(UDim2.new(0,360,0,260),"Out","Quad",0.5,true)a=false end end)function printTable(a)if type(a)~='table'then return nil end;local b=-15;local function c(a,d)b=b+15;for a,d in pairs(a)do if type(d)=='table'then GUI.Store.Text=GUI.Store.Text..'\n'..string.rep(' ',b)..' ['..tostring(a)..'] = {'c(d,false)wait()else GUI.Store.Text=GUI.Store.Text..'\n'..string.rep(' ',b)..' ['..tostring(a)..'] = '..tostring(d)wait()end end;b=b-15 end;c(a,true)end;function refreshlist()pos=0;GUI.Logs.CanvasSize=UDim2.new(0,0,0,0)for a,a in pairs(GUI.Logs:GetChildren())do a.Position=UDim2.new(0,0,0,pos)GUI.Logs.CanvasSize=UDim2.new(0,0,0,pos+20)pos=pos+20 end end;function FindTable(a,b)for a,a in pairs(a)do if a==b then return true end end;return false end;function writefileExploit()if writefile then return true end end;writeaudio={}running=false;GUI.SS.MouseButton1Click:connect(function()if writefileExploit()then if running==false then GUI.Load.Visible=true;running=true;GUI.Load:TweenSize(UDim2.new(0,360,0,20),"Out","Quad",0.5,true)wait(0.3)for a,a in pairs(GUI.Logs:GetChildren())do if a:FindFirstChild('ImageButton')then local b=a:FindFirstChild('ImageButton')if b.BackgroundTransparency==0 then writeaudio[#writeaudio+1]={NAME=a.NAME.Value,ID=a.ID.Value}end end end;GUI.Store.Visible=true;printTable(writeaudio)wait(0.2)local a=0;local function b()local c;pcall(function()c=readfile("Audios"..a..".txt")end)if c then a=a+1;b()else local b=tostring(GUI.Store.Text)b=b:gsub('\n','\r\n')writefile("Audios"..a..".txt",b)end end;b()for a=1,10 do GUI.Load.BackgroundTransparency=GUI.Load.BackgroundTransparency+0.1;wait(0.05)end;GUI.Load.Visible=false;GUI.Load.BackgroundTransparency=0;GUI.Load.Size=UDim2.new(0,0,0,20)running=false;GUI.Store.Visible=false;GUI.Store.Text=''writeaudio={}game:FindService('StarterGui'):SetCore('SendNotification',{Title='Audio Logger',Text='Saved audios\n(Audios'..a..'.txt)',Icon='http://www.roblox.com/asset/?id=176572847',Duration=5})end else game:FindService('StarterGui'):SetCore('SendNotification',{Title='Audio Logger',Text='Exploit cannot writefile :(',Icon='http://www.roblox.com/asset/?id=176572847',Duration=5})end end)GUI.SA.MouseButton1Click:connect(function()if writefileExploit()then if running==false then GUI.Load.Visible=true;running=true;GUI.Load:TweenSize(UDim2.new(0,360,0,20),"Out","Quad",0.5,true)wait(0.3)for a,a in pairs(GUI.Logs:GetChildren())do writeaudio[#writeaudio+1]={NAME=a.NAME.Value,ID=a.ID.Value}end;GUI.Store.Visible=true;printTable(writeaudio)wait(0.2)local a=0;local function b()local c;pcall(function()c=readfile("Audios"..a..".txt")end)if c then a=a+1;b()else local b=tostring(GUI.Store.Text)b=b:gsub('\n','\r\n')writefile("Audios"..a..".txt",b)end end;b()for a=1,10 do GUI.Load.BackgroundTransparency=GUI.Load.BackgroundTransparency+0.1;wait(0.05)end;GUI.Load.Visible=false;GUI.Load.BackgroundTransparency=0;GUI.Load.Size=UDim2.new(0,0,0,20)running=false;GUI.Store.Visible=false;GUI.Store.Text=''writeaudio={}game:FindService('StarterGui'):SetCore('SendNotification',{Title='Audio Logger',Text='Saved audios\n(Audios'..a..'.txt)',Icon='http://www.roblox.com/asset/?id=176572847',Duration=5})end else game:FindService('StarterGui'):SetCore('SendNotification',{Title='Audio Logger',Text='Exploit cannot writefile :(',Icon='http://www.roblox.com/asset/?id=176572847',Duration=5})end end)selectedaudio=nil;function getaudio(a)if running==false then GUI.Load.Visible=true;running=true;GUI.Load:TweenSize(UDim2.new(0,360,0,20),"Out","Quad",0.5,true)wait(0.3)for a,a in pairs(a:GetDescendants())do spawn(function()if a:IsA("Sound")and not GUI.Logs:FindFirstChild(a.SoundId)and not FindTable(ignore,a.SoundId)then local b=string.match(a.SoundId,"rbxasset://sounds.+")or string.match(a.SoundId,"&hash=.+")or string.match(a.SoundId,"%d+")if b~=nil then local c=GUI.Audio:Clone()if string.sub(b,1,6)=="&hash="or string.sub(b,1,7)=="&0hash="then b=string.sub(b,(string.sub(b,1,6)=="&hash="and 7)or(string.sub(b,1,7)=="&0hash="and 8),string.len(b))c.ImageButton.Image='rbxassetid://1453863294'end;c.Parent=GUI.Logs;c.Name=a.SoundId;c.Visible=true;c.Position=UDim2.new(0,0,0,pos)GUI.Logs.CanvasSize=UDim2.new(0,0,0,pos+20)pos=pos+20;local function d()Asset=game:GetService("MarketplaceService"):GetProductInfo(b)end;local b='error'local d,e=pcall(d)if d then c.TextLabel.Text=Asset.Name;b=Asset.Name else c.TextLabel.Text=a.Name;b=a.Name end;local d=Instance.new('StringValue')d.Parent=c;d.Value=a.SoundId;d.Name='ID'local d=Instance.new('StringValue')d.Parent=c;d.Value=b;d.Name='NAME'local d=false;c.ImageButton.MouseButton1Click:Connect(function()if GUI.Info.Visible~=true then if d==false then d=true;c.ImageButton.BackgroundTransparency=0 else d=false;c.ImageButton.BackgroundTransparency=1 end end end)c.Click.MouseButton1Click:Connect(function()if GUI.Info.Visible~=true then GUI.Info.TextLabel.Text="Name: "..b.."\n\nID: "..a.SoundId.."\n\nWorkspace Name: "..a.Name;selectedaudio=a.SoundId;GUI.Info.Visible=true end end)end end end)end end;for a=1,10 do GUI.Load.BackgroundTransparency=GUI.Load.BackgroundTransparency+0.1;wait(0.05)end;GUI.Load.Visible=false;GUI.Load.BackgroundTransparency=0;GUI.Load.Size=UDim2.new(0,0,0,20)running=false end;GUI.All.MouseButton1Click:connect(function()getaudio(game)end)GUI.Workspace.MouseButton1Click:connect(function()getaudio(workspace)end)GUI.Lighting.MouseButton1Click:connect(function()getaudio(game:GetService('Lighting'))end)GUI.SoundS.MouseButton1Click:connect(function()getaudio(game:GetService('SoundService'))end)GUI.Clr.MouseButton1Click:connect(function()for a,a in pairs(GUI.Logs:GetChildren())do if a:FindFirstChild('ImageButton')then local a=a:FindFirstChild('ImageButton')if a.BackgroundTransparency==1 then a.Parent:Destroy()refreshlist()end end end end)GUI.ClrS.MouseButton1Click:connect(function()for a,a in pairs(GUI.Logs:GetChildren())do if a:FindFirstChild('ImageButton')then local a=a:FindFirstChild('ImageButton')if a.BackgroundTransparency==0 then a.Parent:Destroy()refreshlist()end end end end)autoscan=false;GUI.AutoScan.MouseButton1Click:connect(function()if autoscan==false then autoscan=true;GUI.AutoScan.BackgroundTransparency=0.5;game:FindService('StarterGui'):SetCore('SendNotification',{Title='Audio Logger',Text='Auto Scan ENABLED',Icon='http://www.roblox.com/asset/?id=176572847',Duration=5})else autoscan=false;GUI.AutoScan.BackgroundTransparency=0;game:FindService('StarterGui'):SetCore('SendNotification',{Title='Audio Logger',Text='Auto Scan DISABLED',Icon='http://www.roblox.com/asset/?id=176572847',Duration=5})end end)itemadded=game.DescendantAdded:connect(function(a)wait()if autoscan==true and a:IsA('Sound')and not GUI.Logs:FindFirstChild(a.SoundId)and not FindTable(ignore,a.SoundId)then local b=string.match(a.SoundId,"rbxasset://sounds.+")or string.match(a.SoundId,"&hash=.+")or string.match(a.SoundId,"%d+")if b~=nil then local c=GUI.Audio:Clone()if string.sub(b,1,6)=="&hash="or string.sub(b,1,7)=="&0hash="then b=string.sub(b,(string.sub(b,1,6)=="&hash="and 7)or(string.sub(b,1,7)=="&0hash="and 8),string.len(b))c.ImageButton.Image='rbxassetid://1453863294'end;local d=false;c.Parent=GUI.Logs;c.Name=a.SoundId;c.Visible=true;c.Position=UDim2.new(0,0,0,pos)if GUI.Logs.CanvasPosition.Y==GUI.Logs.CanvasSize.Y.Offset-230 then d=true end;GUI.Logs.CanvasSize=UDim2.new(0,0,0,pos+20)pos=pos+20;local function e()Asset=game:GetService("MarketplaceService"):GetProductInfo(b)end;local b='error'local e,f=pcall(e)if e then c.TextLabel.Text=Asset.Name;b=Asset.Name else c.TextLabel.Text=a.Name;b=a.Name end;local e=Instance.new('StringValue')e.Parent=c;e.Value=a.SoundId;e.Name='ID'local e=Instance.new('StringValue')e.Parent=c;e.Value=b;e.Name='NAME'local e=false;c.ImageButton.MouseButton1Click:Connect(function()if GUI.Info.Visible~=true then if e==false then e=true;c.ImageButton.BackgroundTransparency=0 else e=false;c.ImageButton.BackgroundTransparency=1 end end end)c.Click.MouseButton1Click:Connect(function()if GUI.Info.Visible~=true then GUI.Info.TextLabel.Text="Name: "..b.."\n\nID: "..a.SoundId.."\n\nWorkspace Name: "..a.Name;selectedaudio=a.SoundId;GUI.Info.Visible=true end end)if d==true then GUI.Logs.CanvasPosition=Vector2.new(0,9999999999999999999999999999999999999999999,0,0)end end end end)GUI.Info.Copy.MouseButton1Click:Connect(function()if pcall(function()Synapse:Copy(selectedaudio)end)then else local a=setclipboard or Clipboard.set;a(selectedaudio)end;game:FindService('StarterGui'):SetCore('SendNotification',{Title='Audio Logger',Text='Copied to clipboard',Icon='http://www.roblox.com/asset/?id=176572847',Duration=5})end)GUI.Info.Close.MouseButton1Click:Connect(function()GUI.Info.Visible=false;for a,a in pairs(game:GetService('Players').LocalPlayer.PlayerGui:GetChildren())do if a.Name=='SampleSound'then a:Destroy()end end;GUI.Info.Listen.Text='Listen'end)GUI.Info.Listen.MouseButton1Click:Connect(function()if GUI.Info.Listen.Text=='Listen'then local a=Instance.new('Sound')a.Parent=game:GetService('Players').LocalPlayer.PlayerGui;a.Looped=true;a.SoundId=selectedaudio;a:Play()a.Name='SampleSound'a.Volume=5;GUI.Info.Listen.Text='Stop'else for a,a in pairs(game:GetService('Players').LocalPlayer.PlayerGui:GetChildren())do if a.Name=='SampleSound'then a:Destroy()end end;GUI.Info.Listen.Text='Listen'end end)function drag(a)spawn(function()local b=game:GetService("UserInputService")local c;local d;local e;local f;local function g(b)local b=b.Position-e;a:TweenPosition(UDim2.new(f.X.Scale,f.X.Offset+b.X,f.Y.Scale,f.Y.Offset+b.Y),"InOut","Quart",0.04,true,nil)end;a.InputBegan:Connect(function(b)if b.UserInputType==Enum.UserInputType.MouseButton1 or b.UserInputType==Enum.UserInputType.Touch then c=true;e=b.Position;f=a.Position;b.Changed:Connect(function()if b.UserInputState==Enum.UserInputState.End then c=false end end)end end)a.InputChanged:Connect(function(a)if a.UserInputType==Enum.UserInputType.MouseMovement or a.UserInputType==Enum.UserInputType.Touch then d=a end end)b.InputChanged:Connect(function(a)if a==d and c then g(a)end end)end)end;drag(aa.PopupFrame)end})local e=n.UNC:AddSection("UNC")e:AddParagraph({Title="UNC Test Info",Content="With this, you can find out the UNC percentage of your executor/exploit. It doesn't have the newest functions, but it's enough to get a rough overview."})e:AddParagraph({Title="sUNC Info",Content="This will test your sUNC."})e:AddParagraph({Title="More UNC Info",Content="This will give you more UNC by enabling functions your executor doesn't have yet. These functions are experimental and do not guarantee that you will get more UNC. They simply provide additional features that are intended to help increase your UNC."})e:AddButton({Title="UNC Test",Description="Wait until the complete check is finished. You'll know it's done when the summary is displayed.",Callback=function()m:Dialog({Title="Important",Content="Caution! Running the UNC test requires a lot of performance, so use it carefully β€” a weak PC could crash immediately.",Buttons={{Title="Confirm",Callback=function()local a=o(game.Players.LocalPlayer.PlayerGui,"ZaZa GUI",UDim2.new(0,500,0,600),UDim2.new(0.5,-250,0.5,-300),false,UDim2.new(0,25,0,25),true)local b,c,d=0,0,0;local e=0;local function f(a)local b=getfenv(0)while b~=nil and a~=""do local c,d=string.match(a,"^([^.]+)%.?(.*)$")b=b[c]a=d end;return b end;local function g(g,h,i)e=e+1;task.spawn(function()if not i then a("⏺️ "..g)elseif not f(g)then c=c+1;a("β›” "..g)else local d,e=pcall(i)if d then b=b+1;a("βœ… "..g..(e and" β€’ "..e or""))else c=c+1;a("β›” "..g.." failed: "..e)end end;local b={}for a,a in ipairs(h)do if f(a)==nil then table.insert(b,a)end end;if#b>0 then d=d+1;a("⚠️ "..table.concat(b,", "))end;e=e-1 end)end;a("\n")a("UNC Environment Check")a("βœ… - Pass, β›” - Fail, ⏺️ - No test, ⚠️ - Missing aliases\n")task.defer(function()repeat task.wait()until e==0;local e=math.round(b/(b+c)*100)local b=b.." out of "..(b+c)a("\n")a("UNC Summary")a("βœ… Tested with a "..e.."% success rate ("..b..")")a("β›” "..c.." tests failed")a("⚠️ "..d.." globals are missing aliases")end)g("cache.invalidate",{},function()local a=Instance.new("Folder")local b=Instance.new("Part",a)cache.invalidate(a:FindFirstChild("Part"))assert(b~=a:FindFirstChild("Part"),"Reference `part` could not be invalidated")end)g("cache.iscached",{},function()local a=Instance.new("Part")assert(cache.iscached(a),"Part should be cached")cache.invalidate(a)assert(not cache.iscached(a),"Part should not be cached")end)g("cache.replace",{},function()local a=Instance.new("Part")local b=Instance.new("Fire")cache.replace(a,b)assert(a~=b,"Part was not replaced with Fire")end)g("cloneref",{},function()local a=Instance.new("Part")local b=cloneref(a)assert(a~=b,"Clone should not be equal to original")b.Name="Test"assert(a.Name=="Test","Clone should have updated the original")end)g("compareinstances",{},function()local a=Instance.new("Part")local b=cloneref(a)assert(a~=b,"Clone should not be equal to original")assert(compareinstances(a,b),"Clone should be equal to original when using compareinstances()")end)local function a(a,b)if a==b then return true end;local c={["function"]=true,["table"]=true,["userdata"]=true,["thread"]=true}for a,d in pairs(a)do if c[type(d)]then if type(b[a])~=type(d)then return false end elseif b[a]~=d then return false end end;for d,e in pairs(b)do if c[type(e)]then if type(b[d])~=type(e)then return false end elseif a[d]~=e then return false end end;return true end;g("checkcaller",{},function()assert(checkcaller(),"Main scope should return true")end)g("clonefunction",{},function()local function a()return"success"end;local b=clonefunction(a)assert(a()==b(),"The clone should return the same value as the original")assert(a~=b,"The clone should not be equal to the original")end)g("getcallingscript",{})g("getscriptclosure",{"getscriptfunction"},function()local b=game:GetService("CoreGui").RobloxGui.Modules.Common.Constants;local c=getrenv().require(b)local b=getscriptclosure(b)()assert(c~=b,"Generated module should not match the original")assert(a(c,b),"Generated constant table should be shallow equal to the original")end)g("hookfunction",{"replaceclosure"},function()local function a()return true end;local b=hookfunction(a,function()return false end)assert(a()==false,"Function should return false")assert(b()==true,"Original function should return true")assert(a~=b,"Original function should not be same as the reference")end)g("iscclosure",{},function()assert(iscclosure(print)==true,"Function 'print' should be a C closure")assert(iscclosure(function()end)==false,"Executor function should not be a C closure")end)g("islclosure",{},function()assert(islclosure(print)==false,"Function 'print' should not be a Lua closure")assert(islclosure(function()end)==true,"Executor function should be a Lua closure")end)g("isexecutorclosure",{"checkclosure","isourclosure"},function()assert(isexecutorclosure(isexecutorclosure)==true,"Did not return true for an executor global")assert(isexecutorclosure(newcclosure(function()end))==true,"Did not return true for an executor C closure")assert(isexecutorclosure(function()end)==true,"Did not return true for an executor Luau closure")assert(isexecutorclosure(print)==false,"Did not return false for a Roblox global")end)g("loadstring",{},function()local a=game:GetService("Players").LocalPlayer.Character.Animate;local a=getscriptbytecode(a)local a=loadstring(a)assert(type(a)~="function","Luau bytecode should not be loadable!")assert(assert(loadstring("return ... + 1"))(1)==2,"Failed to do simple math")assert(type(select(2,loadstring("f")))=="string","Loadstring did not return anything for a compiler error")end)g("newcclosure",{},function()local function a()return true end;local b=newcclosure(a)assert(a()==b(),"New C closure should return the same value as the original")assert(a~=b,"New C closure should not be same as the original")assert(iscclosure(b),"New C closure should be a C closure")end)g("rconsoleclear",{"consoleclear"})g("rconsolecreate",{"consolecreate"})g("rconsoledestroy",{"consoledestroy"})g("rconsoleinput",{"consoleinput"})g("rconsoleprint",{"consoleprint"})g("rconsolesettitle",{"rconsolename","consolesettitle"})g("crypt.base64encode",{"crypt.base64.encode","crypt.base64_encode","base64.encode","base64_encode"},function()assert(crypt.base64encode("test")=="dGVzdA==","Base64 encoding failed")end)g("crypt.base64decode",{"crypt.base64.decode","crypt.base64_decode","base64.decode","base64_decode"},function()assert(crypt.base64decode("dGVzdA==")=="test","Base64 decoding failed")end)g("crypt.encrypt",{},function()local a=crypt.generatekey()local b,c=crypt.encrypt("test",a,nil,"CBC")assert(c,"crypt.encrypt should return an IV")local a=crypt.decrypt(b,a,c,"CBC")assert(a=="test","Failed to decrypt raw string from encrypted data")end)g("crypt.decrypt",{},function()local a,b=crypt.generatekey(),crypt.generatekey()local c=crypt.encrypt("test",a,b,"CBC")local a=crypt.decrypt(c,a,b,"CBC")assert(a=="test","Failed to decrypt raw string from encrypted data")end)g("crypt.generatebytes",{},function()local a=math.random(10,100)local b=crypt.generatebytes(a)assert(#crypt.base64decode(b)==a,"The decoded result should be "..a.." bytes long (got "..#crypt.base64decode(b).." decoded, "..#b.." raw)")end)g("crypt.generatekey",{},function()local a=crypt.generatekey()assert(#crypt.base64decode(a)==32,"Generated key should be 32 bytes long when decoded")end)g("crypt.hash",{},function()local a={'sha1','sha384','sha512','md5','sha256','sha3-224','sha3-256','sha3-512'}for a,a in ipairs(a)do local b=crypt.hash("test",a)assert(b,"crypt.hash on algorithm '"..a.."' should return a hash")end end)g("debug.getconstant",{},function()local function a()print("Hello, world!")end;assert(debug.getconstant(a,1)=="print","First constant must be print")assert(debug.getconstant(a,2)==nil,"Second constant must be nil")assert(debug.getconstant(a,3)=="Hello, world!","Third constant must be 'Hello, world!'")end)g("debug.getconstants",{},function()local function a()local a=5000 ..50000;print("Hello, world!",a,warn)end;local a=debug.getconstants(a)assert(a[1]==50000,"First constant must be 50000")assert(a[2]=="print","Second constant must be print")assert(a[3]==nil,"Third constant must be nil")assert(a[4]=="Hello, world!","Fourth constant must be 'Hello, world!'")assert(a[5]=="warn","Fifth constant must be warn")end)g("debug.getinfo",{},function()local a={source="string",short_src="string",func="function",what="string",currentline="number",name="string",nups="number",numparams="number",is_vararg="number"}local function b(...)print(...)end;local b=debug.getinfo(b)for a,c in pairs(a)do assert(b[a]~=nil,"Did not return a table with a '"..a.."' field")assert(type(b[a])==c,"Did not return a table with "..a.." as a "..c.." (got "..type(b[a])..")")end end)g("debug.getproto",{},function()local function a()local function a()return true end end;local b=debug.getproto(a,1,true)[1]local a=debug.getproto(a,1)assert(b,"Failed to get the inner function")assert(b()==true,"The inner function did not return anything")if not a()then return"Proto return values are disabled on this executor"end end)g("debug.getprotos",{},function()local function a()local function a()return true end;local function a()return true end;local function a()return true end end;for b in ipairs(debug.getprotos(a))do local c=debug.getproto(a,b,true)[1]local a=debug.getproto(a,b)assert(c(),"Failed to get inner function "..b)if not a()then return"Proto return values are disabled on this executor"end end end)g("debug.getstack",{},function()local a="a".."b"assert(debug.getstack(1,1)=="ab","The first item in the stack should be 'ab'")assert(debug.getstack(1)[1]=="ab","The first item in the stack table should be 'ab'")end)g("debug.getupvalue",{},function()local a=function()end;local function b()print(a)end;assert(debug.getupvalue(b,1)==a,"Unexpected value returned from debug.getupvalue")end)g("debug.getupvalues",{},function()local a=function()end;local function b()print(a)end;local b=debug.getupvalues(b)assert(b[1]==a,"Unexpected value returned from debug.getupvalues")end)g("debug.setconstant",{},function()local function a()return"fail"end;debug.setconstant(a,1,"success")assert(a()=="success","debug.setconstant did not set the first constant")end)g("debug.setstack",{},function()local function a()return"fail",debug.setstack(1,1,"success")end;assert(a()=="success","debug.setstack did not set the first stack item")end)g("debug.setupvalue",{},function()local function a()return"fail"end;local function b()return a()end;debug.setupvalue(b,1,function()return"success"end)assert(b()=="success","debug.setupvalue did not set the first upvalue")end)if isfolder and makefolder and delfolder then if isfolder(".tests")then delfolder(".tests")end;makefolder(".tests")end;g("readfile",{},function()writefile(".tests/readfile.txt","success")assert(readfile(".tests/readfile.txt")=="success","Did not return the contents of the file")end)g("listfiles",{},function()makefolder(".tests/listfiles")writefile(".tests/listfiles/test_1.txt","success")writefile(".tests/listfiles/test_2.txt","success")local a=listfiles(".tests/listfiles")assert(#a==2,"Did not return the correct number of files")assert(isfile(a[1]),"Did not return a file path")assert(readfile(a[1])=="success","Did not return the correct files")makefolder(".tests/listfiles_2")makefolder(".tests/listfiles_2/test_1")makefolder(".tests/listfiles_2/test_2")local a=listfiles(".tests/listfiles_2")assert(#a==2,"Did not return the correct number of folders")assert(isfolder(a[1]),"Did not return a folder path")end)g("writefile",{},function()writefile(".tests/writefile.txt","success")assert(readfile(".tests/writefile.txt")=="success","Did not write the file")local a=pcall(function()writefile(".tests/writefile","success")assert(isfile(".tests/writefile.txt"))end)if not a then return"This executor requires a file extension in writefile"end end)g("makefolder",{},function()makefolder(".tests/makefolder")assert(isfolder(".tests/makefolder"),"Did not create the folder")end)g("appendfile",{},function()writefile(".tests/appendfile.txt","su")appendfile(".tests/appendfile.txt","cce")appendfile(".tests/appendfile.txt","ss")assert(readfile(".tests/appendfile.txt")=="success","Did not append the file")end)g("isfile",{},function()writefile(".tests/isfile.txt","success")assert(isfile(".tests/isfile.txt")==true,"Did not return true for a file")assert(isfile(".tests")==false,"Did not return false for a folder")assert(isfile(".tests/doesnotexist.exe")==false,"Did not return false for a nonexistent path (got "..tostring(isfile(".tests/doesnotexist.exe"))..")")end)g("isfolder",{},function()assert(isfolder(".tests")==true,"Did not return false for a folder")assert(isfolder(".tests/doesnotexist.exe")==false,"Did not return false for a nonexistent path (got "..tostring(isfolder(".tests/doesnotexist.exe"))..")")end)g("delfolder",{},function()makefolder(".tests/delfolder")delfolder(".tests/delfolder")assert(isfolder(".tests/delfolder")==false,"Failed to delete folder (isfolder = "..tostring(isfolder(".tests/delfolder"))..")")end)g("delfile",{},function()writefile(".tests/delfile.txt","Hello, world!")delfile(".tests/delfile.txt")assert(isfile(".tests/delfile.txt")==false,"Failed to delete file (isfile = "..tostring(isfile(".tests/delfile.txt"))..")")end)g("loadfile",{},function()writefile(".tests/loadfile.txt","return ... + 1")assert(assert(loadfile(".tests/loadfile.txt"))(1)==2,"Failed to load a file with arguments")writefile(".tests/loadfile.txt","f")local a,b=loadfile(".tests/loadfile.txt")assert(b and not a,"Did not return an error message for a compiler error")end)g("dofile",{})g("isrbxactive",{"isgameactive"},function()assert(type(isrbxactive())=="boolean","Did not return a boolean value")end)g("mouse1click",{})g("mouse1press",{})g("mouse1release",{})g("mouse2click",{})g("mouse2press",{})g("mouse2release",{})g("mousemoveabs",{})g("mousemoverel",{})g("mousescroll",{})g("fireclickdetector",{},function()local a=Instance.new("ClickDetector")fireclickdetector(a,50,"MouseHoverEnter")end)g("getcallbackvalue",{},function()local a=Instance.new("BindableFunction")local function b()end;a.OnInvoke=b;assert(getcallbackvalue(a,"OnInvoke")==b,"Did not return the correct value")end)g("getconnections",{},function()local a={Enabled="boolean",ForeignState="boolean",LuaConnection="boolean",Function="function",Thread="thread",Fire="function",Defer="function",Disconnect="function",Disable="function",Enable="function"}local b=Instance.new("BindableEvent")b.Event:Connect(function()end)local b=getconnections(b.Event)[1]for a,c in pairs(a)do assert(b[a]~=nil,"Did not return a table with a '"..a.."' field")assert(type(b[a])==c,"Did not return a table with "..a.." as a "..c.." (got "..type(b[a])..")")end end)g("getcustomasset",{},function()writefile(".tests/getcustomasset.txt","success")local a=getcustomasset(".tests/getcustomasset.txt")assert(type(a)=="string","Did not return a string")assert(#a>0,"Returned an empty string")assert(string.match(a,"rbxasset://")=="rbxasset://","Did not return an rbxasset url")end)g("gethiddenproperty",{},function()local a=Instance.new("Fire")local a,b=gethiddenproperty(a,"size_xml")assert(a==5,"Did not return the correct value")assert(b==true,"Did not return whether the property was hidden")end)g("sethiddenproperty",{},function()local a=Instance.new("Fire")local b=sethiddenproperty(a,"size_xml",10)assert(b,"Did not return true for the hidden property")assert(gethiddenproperty(a,"size_xml")==10,"Did not set the hidden property")end)g("gethui",{},function()assert(typeof(gethui())=="Instance","Did not return an Instance")end)g("getinstances",{},function()assert(getinstances()[1]:IsA("Instance"),"The first value is not an Instance")end)g("getnilinstances",{},function()assert(getnilinstances()[1]:IsA("Instance"),"The first value is not an Instance")assert(getnilinstances()[1].Parent==nil,"The first value is not parented to nil")end)g("isscriptable",{},function()local a=Instance.new("Fire")assert(isscriptable(a,"size_xml")==false,"Did not return false for a non-scriptable property (size_xml)")assert(isscriptable(a,"Size")==true,"Did not return true for a scriptable property (Size)")end)g("setscriptable",{},function()local a=Instance.new("Fire")local b=setscriptable(a,"size_xml",true)assert(b==false,"Did not return false for a non-scriptable property (size_xml)")assert(isscriptable(a,"size_xml")==true,"Did not set the scriptable property")a=Instance.new("Fire")assert(isscriptable(a,"size_xml")==false,"⚠️⚠️ setscriptable persists between unique instances ⚠️⚠️")end)g("setrbxclipboard",{})g("getrawmetatable",{},function()local a={__metatable="Locked!"}local b=setmetatable({},a)assert(getrawmetatable(b)==a,"Did not return the metatable")end)g("hookmetamethod",{},function()local a=setmetatable({},{__index=newcclosure(function()return false end),__metatable="Locked!"})local b=hookmetamethod(a,"__index",function()return true end)assert(a.test==true,"Failed to hook a metamethod and change the return value")assert(b()==false,"Did not return the original function")end)g("getnamecallmethod",{},function()local a;local b;b=hookmetamethod(game,"__namecall",function(...)if not a then a=getnamecallmethod()end;return b(...)end)game:GetService("Lighting")assert(a=="GetService","Did not get the correct method (GetService)")end)g("isreadonly",{},function()local a={}table.freeze(a)assert(isreadonly(a),"Did not return true for a read-only table")end)g("setrawmetatable",{},function()local a=setmetatable({},{__index=function()return false end,__metatable="Locked!"})local b=setrawmetatable(a,{__index=function()return true end})assert(a,"Did not return the original object")assert(a.test==true,"Failed to change the metatable")if b then return b==a and"Returned the original object"or"Did not return the original object"end end)g("setreadonly",{},function()local a={success=false}table.freeze(a)setreadonly(a,false)a.success=true;assert(a.success,"Did not allow the table to be modified")end)g("identifyexecutor",{"getexecutorname"},function()local a,b=identifyexecutor()assert(type(a)=="string","Did not return a string for the name")return type(b)=="string"and"Returns version as a string"or"Does not return version"end)g("lz4compress",{},function()local a="Hello, world!"local b=lz4compress(a)assert(type(b)=="string","Compression did not return a string")assert(lz4decompress(b,#a)==a,"Decompression did not return the original string")end)g("lz4decompress",{},function()local a="Hello, world!"local b=lz4compress(a)assert(type(b)=="string","Compression did not return a string")assert(lz4decompress(b,#a)==a,"Decompression did not return the original string")end)g("messagebox",{})g("queue_on_teleport",{"queueonteleport"})g("request",{"http.request","http_request"},function()local a=request({Url="https://httpbin.org/user-agent",Method="GET"})assert(type(a)=="table","Response must be a table")assert(a.StatusCode==200,"Did not return a 200 status code")local a=game:GetService("HttpService"):JSONDecode(a.Body)assert(type(a)=="table"and type(a["user-agent"])=="string","Did not return a table with a user-agent key")return"User-Agent: "..a["user-agent"]end)g("setclipboard",{"toclipboard"})g("setfpscap",{},function()local a=game:GetService("RunService").RenderStepped;local function b()a:Wait()local b=0;for c=1,5 do b=b+(1/a:Wait())end;return math.floor(b/5+0.5)end;setfpscap(60)local a=b()setfpscap(0)local b=b()return tostring(a).."fps @60 β€’ "..tostring(b).."fps @0"end)g("getgc",{},function()local a=getgc()assert(type(a)=="table","Did not return a table")assert(#a>0,"Did not return a table with any values")end)g("getgenv",{},function()getgenv().__TEST_GLOBAL=true;assert(__TEST_GLOBAL,"Failed to set a global variable")getgenv().__TEST_GLOBAL=nil end)g("getloadedmodules",{},function()local a=getloadedmodules()assert(type(a)=="table","Did not return a table")assert(#a>0,"Did not return a table with any values")assert(typeof(a[1])=="Instance","First value is not an Instance")assert(a[1]:IsA("ModuleScript"),"First value is not a ModuleScript")end)g("getrenv",{},function()assert(_G~=getrenv()._G,"The variable _G in the executor is identical to _G in the game")end)g("getrunningscripts",{},function()local a=getrunningscripts()assert(type(a)=="table","Did not return a table")assert(#a>0,"Did not return a table with any values")assert(typeof(a[1])=="Instance","First value is not an Instance")assert(a[1]:IsA("ModuleScript")or a[1]:IsA("LocalScript"),"First value is not a ModuleScript or LocalScript")end)g("getscriptbytecode",{"dumpstring"},function()local a=game:GetService("Players").LocalPlayer.Character.Animate;local b=getscriptbytecode(a)assert(type(b)=="string","Did not return a string for Character.Animate (a "..a.ClassName..")")end)g("getscripthash",{},function()local a=game:GetService("Players").LocalPlayer.Character.Animate:Clone()local b=getscripthash(a)local c=a.Source;a.Source="print('Hello, world!')"task.defer(function()a.Source=c end)local c=getscripthash(a)assert(b~=c,"Did not return a different hash for a modified script")assert(c==getscripthash(a),"Did not return the same hash for a script with the same source")end)g("getscripts",{},function()local a=getscripts()assert(type(a)=="table","Did not return a table")assert(#a>0,"Did not return a table with any values")assert(typeof(a[1])=="Instance","First value is not an Instance")assert(a[1]:IsA("ModuleScript")or a[1]:IsA("LocalScript"),"First value is not a ModuleScript or LocalScript")end)g("getsenv",{},function()local a=game:GetService("Players").LocalPlayer.Character.Animate;local b=getsenv(a)assert(type(b)=="table","Did not return a table for Character.Animate (a "..a.ClassName..")")assert(b.script==a,"The script global is not identical to Character.Animate")end)g("getthreadidentity",{"getidentity","getthreadcontext"},function()assert(type(getthreadidentity())=="number","Did not return a number")end)g("setthreadidentity",{"setidentity","setthreadcontext"},function()setthreadidentity(3)assert(getthreadidentity()==3,"Did not set the thread identity")end)g("Drawing",{})g("Drawing.new",{},function()local a=Drawing.new("Square")a.Visible=false;local a=pcall(function()a:Destroy()end)assert(a,"Drawing:Destroy() should not throw an error")end)g("Drawing.Fonts",{},function()assert(Drawing.Fonts.UI==0,"Did not return the correct id for UI")assert(Drawing.Fonts.System==1,"Did not return the correct id for System")assert(Drawing.Fonts.Plex==2,"Did not return the correct id for Plex")assert(Drawing.Fonts.Monospace==3,"Did not return the correct id for Monospace")end)g("isrenderobj",{},function()local a=Drawing.new("Image")a.Visible=true;assert(isrenderobj(a)==true,"Did not return true for an Image")assert(isrenderobj(newproxy())==false,"Did not return false for a blank table")end)g("getrenderproperty",{},function()local a=Drawing.new("Image")a.Visible=true;assert(type(getrenderproperty(a,"Visible"))=="boolean","Did not return a boolean value for Image.Visible")local a,b=pcall(function()return getrenderproperty(a,"Color")end)if not a or not b then return"Image.Color is not supported"end end)g("setrenderproperty",{},function()local a=Drawing.new("Square")a.Visible=true;setrenderproperty(a,"Visible",false)assert(a.Visible==false,"Did not set the value for Square.Visible")end)g("cleardrawcache",{},function()cleardrawcache()end)g("WebSocket",{})g("WebSocket.connect",{},function()local a={Send="function",Close="function",OnMessage={"table","userdata"},OnClose={"table","userdata"}}local b=WebSocket.connect("ws://echo.websocket.events")assert(type(b)=="table"or type(b)=="userdata","Did not return a table or userdata")for a,c in pairs(a)do if type(c)=="table"then assert(table.find(c,type(b[a])),"Did not return a "..table.concat(c,", ").." for "..a.." (a "..type(b[a])..")")else assert(type(b[a])==c,"Did not return a "..c.." for "..a.." (a "..type(b[a])..")")end end;b:Close()end)end},{Title="Cancel",Callback=function()print("")end}}})end})e:AddButton({Title="More UNC",Description="Wait until the complete check is finished. You'll know it's done when the summary is displayed.",Callback=function()m:Dialog({Title="Important",Content="Caution! Running the More UNC requires a lot of performance, so use it carefully β€” a weak PC could crash immediately.",Buttons={{Title="Confirm",Callback=function()local a=o(game.Players.LocalPlayer.PlayerGui,"ZaZa GUI",UDim2.new(0,500,0,600),UDim2.new(0.5,-250,0.5,-300),false,UDim2.new(0,25,0,25),true)a("You need to wait a few seconds!")local b={Addition={'(%w+)(%s*)%+=(%s*)(%w+)','%1%2=%3%1%2+%3%4'},Subtraction={'(%w+)(%s*)%-=(%s*)(%w+)','%1%2=%3%1%2-%3%4'},Multiplication={'(%w+)(%s*)%*=(%s*)(%w+)','%1%2=%3%1%2*%3%4'},Division={'(%w+)(%s*)/=(%s*)(%w+)','%1%2=%3%1%2/%3%4'},Modulus={'(%w+)(%s*)%%=(%s*)(%w+)','%1%2=%3%1%2%%%3%4'},Concatenation={'(%w+)(%s*)%.%.=(%s*)(%w+)','%1%2=%3%1%2..%3%4'}}local c={}function replace(a)for b,b in next,b do a=string.gsub(a,b[1],b[2])end;return a end;local b={OverrideFunctions=true,enviroment=setmetatable({},{__protected='This metatable is protected'}),OverrideIgnore={'loadstring','checkcaller','isexecutorclosure','isourclosure','isexecclosure'}}local d=rawget;local e=loadstring;local f=e;local g=setmetatable;local h=type;local i=pairs;local j=next;local k=typeof;local l=debug;local m=table;local n=string;local o=bit32;local o=require;local p={}p.__index=p;function p.new()local a=g({},p)a.elements={}return a end;function p:Queue(a)m.insert(self.elements,a)end;function p:Update()if#self.elements==0 then return nil end;return m.remove(self.elements,1)end;function p:IsEmpty()return#self.elements==0 end;function p:Current()return self.elements end;local p=p.new()local q=game:GetService("Players")local r=script.ClassName=='Script'and'Server'or script.ClassName=='LocalScript'and'Client'or script.ClassName=='ModuleScript'and'Module'local r=r=='Client'and q.LocalPlayer or q.PlayerAdded:Wait()getgenv=getgenv or function()return getfenv(0)end;local s=nil;local t='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890'local u,v,w={Instance.new("LocalScript")},{},{}local x={[8]=Enum.KeyCode.Backspace,[9]=Enum.KeyCode.Tab,[12]=Enum.KeyCode.Clear,[13]=Enum.KeyCode.Return,[16]=Enum.KeyCode.LeftShift,[17]=Enum.KeyCode.LeftControl,[18]=Enum.KeyCode.LeftAlt,[19]=Enum.KeyCode.Pause,[20]=Enum.KeyCode.CapsLock,[27]=Enum.KeyCode.Escape,[32]=Enum.KeyCode.Space,[33]=Enum.KeyCode.PageUp,[34]=Enum.KeyCode.PageDown,[35]=Enum.KeyCode.End,[36]=Enum.KeyCode.Home,[45]=Enum.KeyCode.Insert,[46]=Enum.KeyCode.Delete,[48]=Enum.KeyCode.Zero,[49]=Enum.KeyCode.One,[50]=Enum.KeyCode.Two,[51]=Enum.KeyCode.Three,[52]=Enum.KeyCode.Four,[53]=Enum.KeyCode.Five,[54]=Enum.KeyCode.Six,[55]=Enum.KeyCode.Seven,[56]=Enum.KeyCode.Eight,[57]=Enum.KeyCode.Nine,[65]=Enum.KeyCode.A,[66]=Enum.KeyCode.B,[67]=Enum.KeyCode.C,[68]=Enum.KeyCode.D,[69]=Enum.KeyCode.E,[70]=Enum.KeyCode.F,[71]=Enum.KeyCode.G,[72]=Enum.KeyCode.H,[73]=Enum.KeyCode.I,[74]=Enum.KeyCode.J,[75]=Enum.KeyCode.K,[76]=Enum.KeyCode.L,[77]=Enum.KeyCode.M,[78]=Enum.KeyCode.N,[79]=Enum.KeyCode.O,[80]=Enum.KeyCode.P,[81]=Enum.KeyCode.Q,[82]=Enum.KeyCode.R,[83]=Enum.KeyCode.S,[84]=Enum.KeyCode.T,[85]=Enum.KeyCode.U,[86]=Enum.KeyCode.V,[87]=Enum.KeyCode.W,[88]=Enum.KeyCode.X,[89]=Enum.KeyCode.Y,[90]=Enum.KeyCode.Z,[93]=Enum.KeyCode.Menu,[96]=Enum.KeyCode.KeypadZero,[97]=Enum.KeyCode.KeypadOne,[98]=Enum.KeyCode.KeypadTwo,[99]=Enum.KeyCode.KeypadThree,[100]=Enum.KeyCode.KeypadFour,[101]=Enum.KeyCode.KeypadFive,[102]=Enum.KeyCode.KeypadSix,[103]=Enum.KeyCode.KeypadSeven,[104]=Enum.KeyCode.KeypadEight,[105]=Enum.KeyCode.KeypadNine,[106]=Enum.KeyCode.KeypadMultiply,[107]=Enum.KeyCode.KeypadPlus,[109]=Enum.KeyCode.KeypadMinus,[110]=Enum.KeyCode.KeypadPeriod,[111]=Enum.KeyCode.KeypadDivide,[112]=Enum.KeyCode.F1,[113]=Enum.KeyCode.F2,[114]=Enum.KeyCode.F3,[115]=Enum.KeyCode.F4,[116]=Enum.KeyCode.F5,[117]=Enum.KeyCode.F6,[118]=Enum.KeyCode.F7,[119]=Enum.KeyCode.F8,[120]=Enum.KeyCode.F9,[121]=Enum.KeyCode.F10,[122]=Enum.KeyCode.F11,[123]=Enum.KeyCode.F12,[144]=Enum.KeyCode.NumLock,[145]=Enum.KeyCode.ScrollLock,[186]=Enum.KeyCode.Semicolon,[187]=Enum.KeyCode.Equals,[188]=Enum.KeyCode.Comma,[189]=Enum.KeyCode.Minus,[190]=Enum.KeyCode.Period,[191]=Enum.KeyCode.Slash,[192]=Enum.KeyCode.Backquote,[219]=Enum.KeyCode.LeftBracket,[221]=Enum.KeyCode.RightBracket,[222]=Enum.KeyCode.Quote}local y;local z=g({UI=0,System=1,Plex=2,Monospace=3},{__call=function(a)return a end})local A={[0]=Enum.Font.Arial,[1]=Enum.Font.BuilderSans,[2]=Enum.Font.Gotham,[3]=Enum.Font.RobotoMono}local B={Visible=false,Color=Color3.new(0,0,0),ClassName=nil,Remove=function(a)for b,c in j,w do if c==a then local a=b;b:Destroy()w[a]=nil end end end}B.Destroy=B.Remove;local function B(a,...)return(pcall(a,...))end;local function C(a)local a=coroutine.wrap(function(...)local b={coroutine.yield()}while true do b={coroutine.yield(a(m.unpack(b)))}end end)a()return a end;local function D()local a={{name="None",number=0,canAccess=B(function()return game.Name end)},{name="PluginSecurity",number=1,canAccess=B(function()return game:GetService("CoreGui").Name end)},{name="LocalUserSecurity",number=3,canAccess=B(function()return game.DataCost end)},{name="WritePlayerSecurity",number=4,canAccess=B(Instance.new,"Player")},{name="RobloxScriptSecurity",number=5,canAccess=B(function()return game:GetService("CorePackages").Name end)},{name="RobloxSecurity",number=6,canAccess=B(function()return Instance.new("SurfaceAppearance").TexturePack end)},{name="NotAccessibleSecurity",number=7,canAccess=B(function()Instance.new("MeshPart").MeshId=""end)}}local b=1;for c=1,#a do if a[c].canAccess then b=c else return b end end;return b end;if D()>=3 then y=Instance.new("VirtualInputManager")end;local B=true;local E=Instance.new("ScreenGui")local F=Instance.new('TextBox')F.Position=UDim2.new(100,0,100,0)F.Parent=E;local G,H=game:GetService('HttpService'),Instance.new("ScreenGui")local I={}game.DescendantRemoving:Connect(function(a)m.insert(u,a)end)game:FindFirstChildOfClass('UserInputService').WindowFocused:Connect(function()B=true end)game:FindFirstChildOfClass('UserInputService').WindowFocusReleased:Connect(function()B=false end)function rawlength(a)if h(a)~='table'then return 0 end;local b=0;for a,a in j,a do b=b+1 end end;function shallowequals(a,b)if a==nil or b==nil then return false end;if h(a)~='table'or h(b)~='table'then return false end;for a,c in j,a do if b[a]~=c then return false end end;for b,c in j,b do if a[b]~=c then return false end end;return true end;function SetAliases(a,c)for c,c in j,c do b.enviroment[c]=getgenv()[a]or b.enviroment[a]end end;function AddElement(a,d,e,f)if f==true then m.insert(c,a)end;b.enviroment[a]=d;if k(e)=='table'then SetAliases(a,e)end;return d end;function AddEnviroment()local d=(getgenv and getgenv())or getfenv(0)for e,f in j,b.enviroment do if b.OverrideFunctions or not d[e]or m.find(c,e)or(h(f)=='table'and(not shallowequals(d[e],f)or rawlength(f)>rawlength(d[e])))and not m.find(b.OverrideIgnore,e)then a("βœ… Added",e)d[e]=f elseif d[e]and not m.find(c,e)and not b.OverrideFunctions or(h(f)=='table'and(shallowequals(d[e],f)or rawlength(f)<=rawlength(d[e])))or m.find(b.OverrideIgnore,e)then a("❌",e,'already exists.')end end end;local a=AddElement('base64',{encode=function(a)local b='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'return((a:gsub('.',function(a)local a,b='',a:byte()for c=8,1,-1 do a=a..(b%2^c-b%2^(c-1)>0 and'1'or'0')end;return a end)..'0000'):gsub('%d%d%d?%d?%d?%d?',function(a)if(#a<6)then return''end;local c=0;for b=1,6 do c=c+(a:sub(b,b)=='1'and 2^(6-b)or 0)end;return b:sub(c+1,c+1)end)..({'','==','='})[#a%3+1])end,decode=function(a)local b='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'a=n.gsub(a,'[^'..b..'=]','')return(a:gsub('.',function(a)if a=='='then return''end;local a,b='',(b:find(a)-1)for c=6,1,-1 do a=a..(b%2^c-b%2^(c-1)>0 and'1'or'0')end;return a end):gsub('%d%d%d?%d?%d?%d?%d?%d?',function(a)if#a~=8 then return''end;local b=0;for c=1,8 do b=b+(a:sub(c,c)=='1'and 2^(8-c)or 0)end;return n.char(b)end))end})AddElement('base64encode',a.encode,{'base64_encode'})AddElement('base64decode',a.decode,{'base64_decode'})AddElement('debug',{getinfo=function(a)assert(h(a)=='number'or h(a)=='function','invalid argument #1 to \'getinfo\', number or function expected, got '..tostring(k(a)))local b,c=l.info(a,'a')local d=l.info(a,'n')~=''and l.info(a,'n')or''local e=l.info(a,'s')return{numparams=b,is_vararg=c and 1 or 0,name=d,currentline=l.info(a,'l'),source=e,short_src=e:sub(1,60),what=e=='[C]'and'C'or'Lua',func=a,nups=0}end})function rqst(a)assert(h(a)=='table','Argument #1 to \'request\' must be a table, got '..k(a))if k(script)=='Instance'and script.ClassName=='Script'then return G:RequestAsync(a)end;local b,c,d=5,false,0;local e={Success=false,StatusCode=408,StatusMessage='Request Timeout',Headers={},Body=''}local function f(a,b)c=true;e.Success=a;e.StatusCode=b.StatusCode;e.StatusMessage=b.StatusMessage;e.Headers=b.Headers;e.Body=b.Body end;G:RequestInternal(a):Start(f)while not c and d0 and a<1025,'Argument #1 to \'random\' must be over 0 and must not exceed 1024.')local b={}for a=1,a do local a=math.random(1,#t)m.insert(b,t:sub(a,a))end;return m.concat(b)end,generatekey=function(b)b=b or 32;local c=''local d='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'for a=1,b do local a=math.random(1,#d)c=c..n.sub(d,a,a)end;return a.encode(c)end,generatebytes=function(b)assert(h(b)=='number','Argument #1 to \'generatebytes\' must be a number, got '..k(b))local c=''local d='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'for a=1,b do local a=math.random(1,#d)c=c..n.sub(d,a,a)end;return a.encode(c)end},{'crypto','syn.crypto','syn_backup.crypto'})AddElement('syn',{is_beta=function()return true end,protect_gui=function(a)I[a]={Parent=a.Parent,Name=a.Name}a.Parent=gethui()a.Name=randomstring(math.random(8,16))end,unprotect_gui=function(a)local b=d(I,a)if not b then return error("GUI "..a.Name.." does not exist in the protected guis list.",1)end;a.Name=b.Name;a.Parent=b.Parent;I[a]=nil end,request=rqst,get_thread_identity=D,crypto=b.enviroment.crypt},{'syn_backup'})AddElement('cache',{iscached=function(a)return v[a]~='invalid'end,invalidate=function(a)v[a]='invalid'a.Parent=nil end,replace=function(a,b)v[a]=b;b.Name=a.Name;b.Parent=a.Parent;a.Parent=nil end})AddElement('Drawing',{Fonts=z,new=function(a)local function b(a)local b={Visible=false,Color=Color3.new(0,0,0),ClassName=nil,ZIndex=1,Remove=function(a)for b,c in j,w do if c==a then local a=b;b:Destroy()w[a]=nil end end end}b.Destroy=b.Remove;for b,c in j,b do rawset(a.__index,b,c)end end;if a=='Line'then local c=Instance.new("Frame",H)c.Visible=false;c.Size=UDim2.new(0,0,0,0)c.BackgroundColor3=Color3.fromRGB(255,255,255)c.BackgroundTransparency=1;c.BorderSizePixel=0;local d={}d.ClassName=a;d.__index={Thickness=1,From=Vector2.new(0,0),To=Vector2.new(0,0),Transparency=0,updateLine=function(a)if not c then return end;local b=a.From;local d=a.To;local e=(d-b).Magnitude;local d=math.deg(math.atan2(d.Y-b.Y,d.X-b.X))c.Size=UDim2.new(0,e,0,a.Thickness)c.Position=UDim2.new(0,b.X,0,b.Y)c.Rotation=d;c.BackgroundTransparency=1-a.Transparency;c.BackgroundColor3=a.Color;c.Visible=a.Visible;c.ZIndex=a.ZIndex end}b(d)d.__newindex=function(a,b,c)if not a then return end;if k(d.__index[b])==k(c)then rawset(a,b,c)a:updateLine()end end;d.__metatable='This metatable is protected.'local a=g({},d)w[c]=a;return a elseif a=='Square'then local c=Instance.new("Frame",H)c.Visible=false;c.Size=UDim2.new(0,0,0,0)c.BackgroundColor3=Color3.fromRGB(255,255,255)c.BackgroundTransparency=1;c.BorderSizePixel=0;local d=Instance.new("UIStroke",c)d.Color=Color3.fromRGB(255,255,255)d.Enabled=true;local e={}e.ClassName=a;e.__index={Size=Vector2.new(0,0),Position=Vector2.new(0,0),Filled=false,updateSquare=function(a)if not c then return end;c.Size=UDim2.new(0,a.Size.X,0,a.Size.Y)c.Position=UDim2.new(0,a.Position.X,0,a.Position.Y)d.Enabled=a.Filled;d.Color=a.Color;c.BackgroundColor3=a.Color;c.ZIndex=a.ZIndex end}b(e)e.__newindex=function(a,b,c)if not a then return end;if k(a[b])==k(c)then rawset(a,b,c)a:updateSquare()end end;local a=g({},e)w[c]=a;return a elseif a=='Circle'then local c=Instance.new("Frame",H)c.Visible=false;c.Size=UDim2.new(0,0,0,0)c.BackgroundColor3=Color3.fromRGB(255,255,255)c.BackgroundTransparency=1;c.BorderSizePixel=0;local d=Instance.new("UIStroke",c)d.Color=Color3.fromRGB(255,255,255)d.Enabled=false;d.Thickness=1;local e=Instance.new("UICorner",c)e.CornerRadius=UDim.new(1,0)local e={}e.ClassName=a;e.__index={Thickness=1,Filled=false,NumSides=0,Radius=1,Position=Vector2.new(0,0),Transparency=0,updateCircle=function(a)if not d or not c then return end;c.Visible=a.Visible;c.BackgroundTransparency=a.Transparency-1;c.Size=UDim2.new(0,a.Radius,0,a.Radius)c.Position=UDim2.new(0,a.Position.X,0,a.Position.Y)d.Enabled=not a;d.Color=a.Color;c.ZIndex=a.ZIndex end}b(e)e.__newindex=function(a,b,c)if not a then return end;if a[b]~=nil and k(a[b])==k(c)then rawset(a,b,c)a:updateCircle()else warn("Type mismatch or key doesn't exist:",b,c)end end;local a=g({},e)w[c]=a;return a elseif a=='Text'then local c=Instance.new("TextLabel",H)c.Visible=false;c.Size=UDim2.new(0,0,0,0)c.BackgroundColor3=Color3.fromRGB(255,255,255)c.BackgroundTransparency=1;c.BorderSizePixel=0;c.TextStrokeColor3=Color3.new(0,0,0)c.TextStrokeTransparency=1;local d={}d.ClassName=a;d.__index={Text='',Transparency=0,Size=0,Center=false,Outline=false,OutlineColor=Color3.new(0,0,0),Position=Vector2.new(0,0),Font=3,updateText=function(a)if not c then return end;c.TextScaled=true;c.Size=UDim2.new(0,a.Size*3,0,a.Size/2)c.Position=UDim2.new(0,a.Position.X,0,a.Position.Y)c.Text=a.Text;c.Font=A[a.Font]c.Visible=a.Visible;c.TextColor3=a.Color;c.BackgroundTransparency=1-a.Transparency;c.BorderSizePixel=a.Outline and 1 or 0;if a.Center then c.TextXAlignment=Enum.TextXAlignment.Center;c.TextYAlignment=Enum.TextYAlignment.Center else c.TextXAlignment=Enum.TextXAlignment.Left;c.TextYAlignment=Enum.TextYAlignment.Top end;c.TextStrokeTransparency=a.Outline and 0 or 1;c.TextStrokeColor3=a.OutlineColor;c.ZIndex=a.ZIndex end}b(d)d.__newindex=function(a,b,c)if not a then return end;if k(a[b])==k(c)then rawset(a,b,c)a:updateText()end end;local a=g({},d)w[c]=a;return a end end})local a=b.enviroment.Drawing.new;b.enviroment.Drawing.new=function(b)if b~='Image'then return a(b)else return a('Circle')end end;AddElement('loadstring',function(a)local b=f('local result=3;result+=1;return result')()local c=f('local result="h";result..="i";return result')()if b~=4 or c~='hi'then return f(replace(a))elseif b==4 and c=='hi'then return f(a)end end,{},true)AddElement('getrenderproperty',function(a,b)return a[b]end)AddElement('setrenderproperty',function(a,c,d)if b.enviroment.isrenderobj(a)then a[c]=d end end)AddElement('isrenderobj',function(a)for b,b in j,w do if b==a then return true end end;return false end)AddElement('gethui',function()if not s then local a,b=pcall(function()local a=G:FindFirstChildOfClass('CoreGui')s=Instance.new("Folder",a)s.Name='hidden_ui\0'end)if not a then if r then s=Instance.new("Folder",r:FindFirstChildOfClass("PlayerGui"))s.Name='hidden_ui\0'else if#q:GetChildren()==0 then repeat task.wait()until#q:GetChildren()>0 end;local a=q:GetChildren()[math.random(1,#q:GetChildren())]s=Instance.new("Folder",a:FindFirstChild("PlayerGui"))s.Name='hidden_ui\0'end end end;return s end,{'get_hidden_ui','gethiddenui'})AddElement('randomstring',function(a)a=a or 32;local b={}for a=1,a do local c=math.random(1,#t)b[a]=t:sub(c,c)end;return m.concat(b)end)AddElement('iscclosure',function(a)return l.info(a,'s')=='[C]'end,{'is_c_closure'})AddElement('islclosure',function(a)return l.info(a,'s')~='[C]'end,{'is_l_closure'})AddElement('isourclosure',function(a)return l.info(a,'s')==l.info(1,'s')end,{'isexecclosure','isexeclosure','is_executor_closure','isexecutorclosure','checkclosure'})AddElement('getinstances',function()return game:GetDescendants()end)AddElement('getnilinstances',function()return u end)AddElement('isreadonly',function(a)return m.isfrozen(a)end)AddElement('isscriptable',function(a,b)assert(k(a)=='Instance','Argument #1 to \'setscriptable\' must be an Instance, got '..k(a))return select(1,pcall(function()return a[b]end))end,{'is_scriptable'})AddElement('getscripts',function()local a={}for b,b in j,game:GetDescendants()do if b.ClassName=='ModuleScript'or b.ClassName=='LocalScript'then m.insert(a,b)end end;return a end)AddElement('getloadedmodules',function()local a={}for b,b in j,game:GetDescendants()do if b.ClassName=='ModuleScript'then m.insert(a,b)end end;return a end)AddElement('getcallingscript',function()local a=l.info(1,'s')for b,b in j,game:GetDescendants()do if b:GetFullName()==a then return b end end end,{'get_calling_script'})AddElement('isrbxactive',function()return B end,{'isgameactive'})AddElement('newcclosure',C)AddElement('getthreadidentity',D,{'getthreadcontext','getidentity'})AddElement('getrunningscripts',function()local a={}for b,b in j,game:GetDescendants()do if b.ClassName=='LocalScript'or b.ClassName=='ModuleScript'then m.insert(a,b)end end;return a end)AddElement('getexecutorname',function()return'MoreUNC','2.0.0'end,{'identifyexecutor'})AddElement('cleardrawcache',function()for a,a in j,w do a:Remove()end end)local a={}local function b(a,b)return a:sub(1,#b)==b end;local function c(a,b)return a:sub(#a-#b+1,#a)==b end;AddElement('writefile',function(b,c)local b=b:split('/')local d={}for e=1,#b do local f=b[e]d[e]=f;if not a[f]and e~=#b then a[m.concat(d,'/')]={}a[m.concat(d,'/')..'/']=a[m.concat(d,'/')]elseif e==#b then a[m.concat(d,'/')]=tostring(c)end end end)AddElement('makefolder',function(b)a[b]={}a[b..'/']=a[b]end)AddElement('isfolder',function(b)return h(a[b])=='table'end)AddElement('isfile',function(b)return h(a[b])=='string'end)AddElement('readfile',function(b)return a[b]end)AddElement('appendfile',function(a,b)writefile(a,readfile(a)..b)end)AddElement('loadfile',function(a)local b=readfile(a)if not b then error('File \''..tostring(a)..'\' does not exist.')return''end;local a,b=pcall(function()return e(b)end)return b,not a and b or nil end)AddElement('delfolder',function(b)local c=a[b]if h(c)=='table'then a[b]=nil end end)AddElement('delfile',function(b)local c=a[b]if h(c)=='string'then a[b]=nil end end)AddElement('listfiles',function(d)if not d or d==''then local a={}for b,c in i(a)do if#b:split('/')==1 then m.insert(a,b)end end;return a end;if h(a[d])~='table'then return error(d..' is not a folder.')end;local e={}for a,f in i(a)do if b(a,d..'/')and not c(a,'/')and a~=d and#a:split('/')==(#d:split('/')+1)then m.insert(e,a)end end;return e end)AddElement('checkcaller',function()local a=l.info(getgenv,'slnaf')return l.info(1,'slnaf')==a end)AddElement('clonefunction',function(a)return function(...)return a(...)end end,{'newlclosure'})AddElement('getscriptclosure',function(a)assert(k(a)~='Instance','Argument #1 to \'getscriptclosure\' must be an Instance.')return function()return o(a)end end,{'getscriptfunction'})AddElement('getgenv',function()return getfenv(0)end)if y then AddElement('mouse1click',function(a,b)a=a or 0;b=b or 0;y:SendMouseButtonEvent(a,b,0,true,game,false)task.wait()y:SendMouseButtonEvent(a,b,0,false,game,false)end)AddElement('mouse2click',function(a,b)a=a or 0;b=b or 0;y:SendMouseButtonEvent(a,b,1,true,game,false)task.wait()y:SendMouseButtonEvent(a,b,1,false,game,false)end)AddElement('mouse1press',function(a,b)a=a or 0;b=b or 0;y:SendMouseButtonEvent(a,b,0,true,game,false)end)AddElement('mouse1release',function(a,b)a=a or 0;b=b or 0;y:SendMouseButtonEvent(a,b,0,false,game,false)end)AddElement('mouse2press',function(a,b)a=a or 0;b=b or 0;y:SendMouseButtonEvent(a,b,1,true,game,false)end)AddElement('mouse2release',function(a,b)a=a or 0;b=b or 0;y:SendMouseButtonEvent(a,b,1,false,game,false)end)AddElement('mousescroll',function(a,b,c)a=a or 0;b=b or 0;c=c and true or false;y:SendMouseWheelEvent(a,b,c,game)end)AddElement('keyclick',function(a)if k(a)=='number'then if not x[a]then return error("Key "..tostring(a)..' not found!')end;y:SendKeyEvent(true,x[a],false,game)task.wait()y:SendKeyEvent(false,x[a],false,game)elseif k(a)=='EnumItem'then y:SendKeyEvent(true,a,false,game)task.wait()y:SendKeyEvent(false,a,false,game)end end)AddElement('keypress',function(a)if k(a)=='number'then if not x[a]then return error("Key "..tostring(a)..' not found!')end;y:SendKeyEvent(true,x[a],false,game)elseif k(a)=='EnumItem'then y:SendKeyEvent(true,a,false,game)end end)AddElement('keyrelease',function(a)if k(a)=='number'then if not x[a]then return error("Key "..tostring(a)..' not found!')end;y:SendKeyEvent(false,x[a],false,game)elseif k(a)=='EnumItem'then y:SendKeyEvent(false,a,false,game)end end)AddElement('mousemoverel',function(a,b)local c=workspace.CurrentCamera.ViewportSize;a=a or 0;b=b or 0;local a=c.X*a;local b=c.Y*b;y:SendMouseMoveEvent(a,b,game)end)AddElement('mousemoveabs',function(a,b)a=a or 0;b=b or 0;y:SendMouseMoveEvent(a,b,game)end)AddElement("fireproximityprompt",function(a)local b,c=game:GetService("UserInputService"):GetFocusedTextBox(),""if b then c=b.Text;b:ReleaseFocus()end;local d={"HoldDuration","MaxActivationDistance","Enabled","RequiresLineOfSight"}local e={}for b,b in j,d do e[b]=a[b]end;a.Enabled=true;a.RequiresLineOfSight=false;a.MaxActivationDistance=math.huge;a.HoldDuration=0;y:SendKeyEvent(true,a.KeyboardKeyCode,false,game)task.wait()y:SendKeyEvent(false,a.KeyboardKeyCode,false,game)for b,c in j,e do a[b]=c end;if b then b:CaptureFocus()b.Text=c end end)AddElement('setclipboard',function(a)repeat task.wait()until p:Current()[1]==a or p:IsEmpty()p:Queue(a)local a=game:GetService("UserInputService"):GetFocusedTextBox()local b=p:Current()[1]F:CaptureFocus()F.Text=b;local b=Enum.KeyCode;local c={b.RightControl,b.A}local b={b.RightControl,b.C,b.V}for a,a in ipairs(c)do y:SendKeyEvent(true,a,false,game)task.wait()end;for a,a in ipairs(c)do y:SendKeyEvent(false,a,false,game)task.wait()end;for a,a in ipairs(b)do y:SendKeyEvent(true,a,false,game)task.wait()end;for a,a in ipairs(b)do y:SendKeyEvent(false,a,false,game)task.wait()end;F.Text=''if a then a:CaptureFocus()end;task.wait(.18)p:Update()end,{'toclipboard','writeclipboard','setrbxclipboard','syn.write_clipboard'})else warn("Your executor is not high level enough to support input functions (Including setclipboard & fireproximityprompt)")end;local a={}AddElement('rconsolecreate',function()local b=M:init()m.insert(a,b)b.Parent=gethui()end,{'consolecreate'})AddElement('rconsoledestroy',function()for a,a in j,a do a:Destroy()end end,{'consoledestroy'})AddElement('rconsoleprint',function(a)assert(h(a)=='string','Argument #1 to \'rconsoleprint\' must be a string, not '..h(a))M:addmessage(a)end,{'consoleprint'})AddElement('rconsoleinput',function(a)assert(h(a)=='string','Argument #1 to \'rconsoleinput\' must be a string, not '..h(a))return M:addinput(a)end,{'rconsoleinputasync','consoleinput'})AddElement('rconsoleclear',function()local a=a[#a]if not a then return end;if a:FindFirstChild('MainFrame')and a.MainFrame:FindFirstChild('Messages')then for a,a in j,a.MainFrame:FindFirstChild('Messages'):GetChildren()do if a.ClassName~='UIListLayout'then a:Destroy()end end end end,{'consoleclear'})AddElement("rconsolesettitle",function(b)assert(h(b)=='string','Argument #1 to \'rconsoleinput\' must be a string, not '..h(b))local a=a[#a]if not a then return end;a:FindFirstChild("MainFrame"):FindFirstChild("TopBar"):FindFirstChild("Title").Text=b end,{"rconsolename","consolesettitle"})AddElement('getscripthash',function(a)assert(k(a)=='Instance','Argument #1 to \'getscripthash\' must be an Instance, not '..k(a))assert(a.ClassName~='LocalScript'or a.ClassName~='Script','Argument #1 to \'getscripthash\' must be a LocalScript or Script')return a:GetHash()end)AddElement('saveinstance',function()local a={RepoURL="https://raw.githubusercontent.com/luau/SynSaveInstance/main/",SSI="saveinstance"}local a=e(game:HttpGet(a.RepoURL..a.SSI..".luau",true),a.SSI)()local b={ReadMe=true,IsolatePlayers=true,FilePath=n.format("%d",tick())}a(b)end)if not getgenv().MoreUNCV2 then AddEnviroment()getgenv().MoreUNCV2=true;syn.protect_gui(H)syn.protect_gui(E)end end},{Title="Cancel",Callback=function()print("Cancelled.")end}}})end})local e=n.MiscTab:AddSection("TestFeatures")e:AddButton({Title="Benchmark",Description="FPS Test",Callback=function()local a=d.LocalPlayer;local function b(a,b)local a=Instance.new(a)for b,c in pairs(b)do a[b]=c end;return a end;local a=b("ScreenGui",{Name="ZaZaBenchmark",Parent=a:WaitForChild("PlayerGui"),ResetOnSpawn=false})local c=b("Frame",{Size=UDim2.new(0,380,0,280),Position=UDim2.new(0.5,-190,0.5,-140),BackgroundColor3=Color3.fromRGB(30,30,30),BorderSizePixel=0,Parent=a})b("UICorner",{CornerRadius=UDim.new(0,12),Parent=c})b("UIStroke",{Color=Color3.fromRGB(0,255,100),Thickness=2,Parent=c})local d=b("TextLabel",{Size=UDim2.new(1,-40,0,30),Position=UDim2.new(0,10,0,5),BackgroundTransparency=1,Text="ZaZa Performance Benchmark v0.1",TextColor3=Color3.fromRGB(255,255,255),Font=Enum.Font.SourceSansBold,TextSize=20,TextXAlignment=Enum.TextXAlignment.Left,Parent=c})local d=b("TextButton",{Size=UDim2.new(0,30,0,30),Position=UDim2.new(1,-35,0,5),Text="X",Font=Enum.Font.Code,TextSize=20,TextColor3=Color3.fromRGB(255,100,100),BackgroundTransparency=1,Parent=c})local function e(a,d)return b("TextLabel",{Size=UDim2.new(1,-20,0,20),Position=UDim2.new(0,10,0,d),BackgroundTransparency=1,Text=a,TextColor3=Color3.fromRGB(200,255,200),Font=Enum.Font.Code,TextSize=16,TextXAlignment=Enum.TextXAlignment.Left,Parent=c})end;local function e(a,d)return b("TextBox",{Size=UDim2.new(1,-20,0,25),Position=UDim2.new(0,10,0,d),Text=a,PlaceholderText=a,Font=Enum.Font.Code,TextSize=16,BackgroundColor3=Color3.fromRGB(40,40,40),TextColor3=Color3.fromRGB(255,255,255),Parent=c})end;local f=e("Number of Parts (e.g. 1000)",40)local g=e("Auto-Cleanup Time in Seconds (e.g. 10)",75)local e=e("Material (Plastic, Neon...)",110)local i=b("TextButton",{Size=UDim2.new(1,-20,0,25),Position=UDim2.new(0,10,0,145),Text="Progress Display: ON",Font=Enum.Font.Code,TextSize=16,BackgroundColor3=Color3.fromRGB(60,60,60),TextColor3=Color3.fromRGB(0,255,100),Parent=c})local j=true;i.MouseButton1Click:Connect(function()j=not j;i.Text="Progress Display: "..(j and"ON"or"OFF")i.TextColor3=j and Color3.fromRGB(0,255,100)or Color3.fromRGB(255,100,100)end)local i=b("TextLabel",{Size=UDim2.new(1,-20,0,70),Position=UDim2.new(0,10,0,175),BackgroundTransparency=1,TextColor3=Color3.fromRGB(200,255,200),TextXAlignment=Enum.TextXAlignment.Left,TextYAlignment=Enum.TextYAlignment.Top,Font=Enum.Font.Code,TextSize=14,TextWrapped=true,Text="Ready.",Parent=c})local b=b("TextButton",{Size=UDim2.new(1,-20,0,25),Position=UDim2.new(0,10,1,-35),Text="Start Benchmark",Font=Enum.Font.SourceSansBold,TextSize=18,BackgroundColor3=Color3.fromRGB(0,255,100),TextColor3=Color3.fromRGB(0,0,0),Parent=c})d.MouseButton1Click:Connect(function()a:Destroy()end)b.MouseButton1Click:Connect(function()local a,b=pcall(function()i.Text="Benchmark running..."local b=0;local c={}local d=tick()local f=tonumber(f.Text)or 1000;local g=tonumber(g.Text)or 10;local k=Enum.Material[e.Text]if not k then error("Invalid material entered: "..e.Text)end;local e=h.RenderStepped:Connect(function()b=b+1 end)spawn(function()for a=1,f do local b=Instance.new("Part")b.Anchored=true;b.Size=Vector3.new(1,1,1)b.Position=Vector3.new(math.random(-100,100),math.random(10,100),math.random(-100,100))b.Material=k;b.Color=Color3.fromRGB(0,255,100)b.Parent=workspace;c[#c+1]=b;if j and a%100==0 then i.Text="Created: "..tostring(a).."/"..tostring(f)wait()end end;local d=tick()-d;e:Disconnect()local b=math.floor(b/d+0.5)local e=b<25 and Color3.fromRGB(255,0,0)or b<45 and Color3.fromRGB(255,165,0)or Color3.fromRGB(0,255,100)i.Text="Benchmark completed!\nParts: "..#c.."\nTime: "..string.format("%.2f",d).."s\nFPS: "..b;i.TextColor3=e;wait(g)for a,a in ipairs(c)do if a and a.Parent then a:Destroy()end end;a:Destroy()end)end)if not a then i.Text="Error while executing the benchmark: "..b;i.Text="There was an error with the benchmark!"i.TextColor3=Color3.fromRGB(255,0,0)i.Text="Error: "..b end end)end})n.Emote:AddButton({Title="Open Emote Menu",Callback=function()local a=false;local b={}local function c(a,c,d)if not a or not c then return end;table.insert(b,{name=a,id=c,icon="rbxthumb://type=Asset&id="..c.."&w=150&h=150",price=d or 0,index=#b+1,sort={}})end;local e="newestfirst"local h="rbxassetid://10651060677"local m="rbxassetid://10651061109"local n={}local o=Instance.new("ScreenGui")o.Name="Emotes"o.DisplayOrder=2;o.ZIndexBehavior=Enum.ZIndexBehavior.Sibling;o.ResetOnSpawn=false;o.Enabled=false;local p=Instance.new("Frame")p.Size=UDim2.new(1,0,0.75,0)p.AnchorPoint=Vector2.new(0.5,0.5)p.Position=UDim2.new(0.5,0,0.5,0)p.SizeConstraint=Enum.SizeConstraint.RelativeYY;p.BackgroundColor3=Color3.fromRGB(25,25,25)p.BackgroundTransparency=0.2;p.BorderSizePixel=0;p.Parent=o;local q=Instance.new("UIPadding")q.PaddingTop=UDim.new(0.15,0)q.PaddingBottom=UDim.new(0.15,0)q.PaddingLeft=UDim.new(0.15,0)q.Parent=p;local q=Instance.new("TextLabel")q.Name="EmoteName"q.Text="Select an Emote"q.TextScaled=true;q.AnchorPoint=Vector2.new(0.5,0.5)q.Position=UDim2.new(-0.1,0,0.5,0)q.Size=UDim2.new(0.2,0,0.2,0)q.SizeConstraint=Enum.SizeConstraint.RelativeYY;q.BackgroundColor3=Color3.fromRGB(40,40,40)q.TextColor3=Color3.new(1,1,1)q.BorderSizePixel=0;q.Parent=p;local r=Instance.new("UICorner")r.Parent=q;local s=Instance.new("TextLabel")s.AnchorPoint=Vector2.new(0.5,0.5)s.Text="Loading..."s.TextColor3=Color3.new(1,1,1)s.BackgroundColor3=Color3.fromRGB(0,0,0)s.TextScaled=true;s.BackgroundTransparency=0.3;s.Size=UDim2.fromScale(0.2,0.1)s.Position=UDim2.fromScale(0.5,0.2)s.Parent=p;local t=Instance.new("UICorner")t.Parent=s;local t=Instance.new("ScrollingFrame")t.Size=UDim2.new(1,0,1,0)t.CanvasSize=UDim2.new(0,0,0,0)t.AutomaticCanvasSize=Enum.AutomaticSize.Y;t.ScrollingDirection=Enum.ScrollingDirection.Y;t.AnchorPoint=Vector2.new(0.5,0.5)t.Position=UDim2.new(0.5,0,0.5,0)t.BackgroundTransparency=1;t.ScrollBarThickness=5;t.BorderSizePixel=0;t.Parent=p;t.MouseLeave:Connect(function()q.Text="Select an Emote"end)local u=Instance.new("UIGridLayout")u.CellSize=UDim2.new(0.105,0,0,0)u.CellPadding=UDim2.new(0.006,0,0.006,0)u.SortOrder=Enum.SortOrder.LayoutOrder;u.Parent=t;local u=Instance.new("Frame")u.Visible=false;u.BorderSizePixel=0;u.Position=UDim2.new(1,5,-0.125,0)u.Size=UDim2.new(0.2,0,0,0)u.AutomaticSize=Enum.AutomaticSize.Y;u.BackgroundTransparency=0.2;u.BackgroundColor3=Color3.fromRGB(30,30,30)u.Parent=p;local v=Instance.new("UICorner")v.Parent=u;local v=Instance.new("UIListLayout")v.Padding=UDim.new(0.02,0)v.HorizontalAlignment=Enum.HorizontalAlignment.Center;v.VerticalAlignment=Enum.VerticalAlignment.Top;v.SortOrder=Enum.SortOrder.LayoutOrder;v.Parent=u;local function v()for a,a in pairs(b)do local c=t:FindFirstChild(a.id)if c then local d=table.find(n,a.id)c.LayoutOrder=a.sort[e]+((d and 0)or#b)c.number.Text=a.sort[e]end end end;local function w(a,b,c)local d=Instance.new("TextButton")d.SizeConstraint=Enum.SizeConstraint.RelativeXX;d.Size=UDim2.new(1,0,0.2,0)d.BackgroundColor3=Color3.fromRGB(30,30,30)d.LayoutOrder=a;d.TextColor3=Color3.new(1,1,1)d.Text=b;d.TextScaled=true;d.BorderSizePixel=0;r:Clone().Parent=d;d.Parent=u;d.MouseButton1Click:Connect(function()u.Visible=false;e=c;v()end)return d end;w(1,"Newest First","newestfirst")w(2,"Oldest First","oldestfirst")w(3,"Alphabetically First","alphabeticfirst")w(4,"Alphabetically Last","alphabeticlast")w(5,"Highest Price","highestprice")w(6,"Lowest Price","lowestprice")local v=Instance.new("TextButton")v.BorderSizePixel=0;v.AnchorPoint=Vector2.new(0.5,0.5)v.Position=UDim2.new(0.925,-5,-0.075,0)v.Size=UDim2.new(0.15,0,0.1,0)v.TextScaled=true;v.TextColor3=Color3.new(1,1,1)v.BackgroundColor3=Color3.new(0,0,0)v.BackgroundTransparency=0.3;v.Text="Sort"v.MouseButton1Click:Connect(function()u.Visible=not u.Visible end)r:Clone().Parent=v;v.Parent=p;local v=Instance.new("TextButton")v.BorderSizePixel=0;v.AnchorPoint=Vector2.new(0.5,0.5)v.Position=UDim2.new(0.075,0,-0.075,0)v.Size=UDim2.new(0.15,0,0.1,0)v.TextScaled=true;v.TextColor3=Color3.new(1,1,1)v.BackgroundColor3=Color3.new(0,0,0)v.BackgroundTransparency=0.3;v.Text="Close"v.MouseButton1Click:Connect(function()o.Enabled=false end)r:Clone().Parent=v;v.Parent=p;local v=Instance.new("TextBox")v.BorderSizePixel=0;v.AnchorPoint=Vector2.new(0.5,0.5)v.Position=UDim2.new(0.5,0,-0.075,0)v.Size=UDim2.new(0.55,0,0.1,0)v.TextScaled=true;v.PlaceholderText="Search"v.TextColor3=Color3.new(1,1,1)v.BackgroundColor3=Color3.new(0,0,0)v.BackgroundTransparency=0.3;v:GetPropertyChangedSignal("Text"):Connect(function()local a=v.Text:lower()local b=t:GetChildren()if a~=a:sub(1,50)then v.Text=v.Text:sub(1,50)a=v.Text:lower()end;if a~=""then for b,b in pairs(b)do if b:IsA("GuiButton")then local c=b:GetAttribute("name"):lower()b.Visible=c:match(a)~=nil end end else for a,a in pairs(b)do if a:IsA("GuiButton")then a.Visible=true end end end end)r:Clone().Parent=v;v.Parent=p;o.Enabled=true;local p;o:GetPropertyChangedSignal("Enabled"):Connect(function()if o.Enabled==true then q.Text="Select an Emote"v.Text=""u.Visible=false;i:SetEmotesMenuOpen(false)p=g.InputBegan:Connect(function(a,b)if not b then if a.UserInputType==Enum.UserInputType.MouseButton1 then o.Enabled=false end end end)else p:Disconnect()end end)if not a then i.EmotesMenuOpenChanged:Connect(function(a)if a then o.Enabled=false end end)end;i.MenuOpened:Connect(function()o.Enabled=false end)if not game:IsLoaded()then game.Loaded:Wait()end;local d=d.LocalPlayer;if a then o.Parent=d.PlayerGui else local a=syn and DrawingImmediate;if(not is_sirhurt_closure)and(not a)and(syn and syn.protect_gui)then syn.protect_gui(o)o.Parent=l elseif get_hidden_gui or gethui then local a=get_hidden_gui or gethui;o.Parent=a()else o.Parent=l end end;local function g(b,c)if(not a)and syn and syn.toast_notification then syn.toast_notification({Type=ToastType.Error,Title=b,Content=c})else j:SetCore("SendNotification",{Title=b,Text=c})end end;local function i(b,c,d)if a then return b:PlayEmote(c)else return b:PlayEmoteAndGetAnimTrackById(d)end end;local function j(a,b)v.Text=""local c=d.Character:FindFirstChildOfClass("Humanoid")local e=c and c:FindFirstChildOfClass("HumanoidDescription")if not e then return end;if d.Character.Humanoid.RigType~=Enum.HumanoidRigType.R6 then local d,f=pcall(function()i(c,a,b)end)if not d then e:AddEmote(a,b)i(c,a,b)end else g("R6?","You should be using R15.")end end;local function g(a,b)local c=a:FindFirstChildOfClass(b)while not c or c.ClassName~=b do c=a.ChildAdded:Wait()end;return c end;local i=CatalogSearchParams.new()i.AssetTypes={Enum.AvatarAssetType.EmoteAnimation}i.SortType=Enum.CatalogSortType.RecentlyCreated;i.SortAggregation=Enum.CatalogSortAggregation.AllTime;i.IncludeOffSale=true;i.CreatorName="Roblox"i.Limit=120;local function l()local a,b=pcall(function()return k:SearchCatalog(i)end)if not a then task.wait(5)return l()end;return b end;local i=l()local k={}while true do local a=i:GetCurrentPage()table.insert(k,a)if i.IsFinished then break end;local function a()local b=pcall(function()i:AdvanceToNextPageAsync()end)if not b then task.wait(5)return a()end end;a()end;local i={}for a,a in pairs(k)do for a,a in pairs(a)do table.insert(i,a)end end;for a,a in pairs(i)do c(a.Name,a.Id,a.Price)end;c("Arm Wave",5915773155)c("Head Banging",5915779725)c("Face Calisthenics",9830731012)s:Destroy()table.sort(b,function(a,b)return a.indexb.index end)for a,b in pairs(b)do b.sort.oldestfirst=a end;table.sort(b,function(a,b)return a.name:lower()b.name:lower()end)for a,b in pairs(b)do b.sort.alphabeticlast=a end;table.sort(b,function(a,b)return a.priceb.price end)for a,b in pairs(b)do b.sort.highestprice=a end;local function c(...)if a then return elseif isfile then return isfile(...)end end;local function i(...)if a then return elseif writefile then return writefile(...)end end;local function k(...)if a then return elseif readfile then return readfile(...)end end;if not a then if c("FavoritedEmotes.txt")then if not pcall(function()n=f:JSONDecode(k("FavoritedEmotes.txt"))end)then n={}end else i("FavoritedEmotes.txt",f:JSONEncode(n))end;local a={}for c,c in pairs(n)do if typeof(c)=="string"then for b,b in pairs(b)do if b.name==c then table.insert(a,b.id)break end end end end;if#a~=0 then n=a;i("FavoritedEmotes.txt",f:JSONEncode(n))end end;local function a(a)for a,a in pairs(t:GetChildren())do if not a:IsA("UIGridLayout")then a:Destroy()end end;local a=g(a,"Humanoid")local a=a:WaitForChild("HumanoidDescription",5)or Instance.new("HumanoidDescription",a)local c=Instance.new("TextButton")local d=Instance.new("UIAspectRatioConstraint")d.AspectType=Enum.AspectType.ScaleWithParentSize;d.Parent=c;c.LayoutOrder=0;c.TextColor3=Color3.new(1,1,1)c.BorderSizePixel=0;c.BackgroundTransparency=0.5;c.BackgroundColor3=Color3.new(0,0,0)c.TextScaled=true;c.Text="Random"c:SetAttribute("name","")r:Clone().Parent=c;c.MouseButton1Click:Connect(function()local a=b[math.random(1,#b)]j(a.name,a.id)end)c.MouseEnter:Connect(function()q.Text="Random"end)c.Parent=t;for c,c in pairs(b)do a:AddEmote(c.name,c.id)local a=Instance.new("ImageButton")local g=table.find(n,c.id)a.LayoutOrder=c.sort[e]+((g and 0)or#b)a.Name=c.id;a:SetAttribute("name",c.name)r:Clone().Parent=a;a.Image=c.icon;a.BackgroundTransparency=0.5;a.BackgroundColor3=Color3.new(0,0,0)a.BorderSizePixel=0;d:Clone().Parent=a;local d=Instance.new("TextLabel")d.Name="number"d.TextScaled=true;d.BackgroundTransparency=1;d.TextColor3=Color3.new(1,1,1)d.BorderSizePixel=0;d.AnchorPoint=Vector2.new(0.5,0.5)d.Size=UDim2.new(0.2,0,0.2,0)d.Position=UDim2.new(0.1,0,0.9,0)d.Text=c.sort[e]d.TextXAlignment=Enum.TextXAlignment.Center;d.TextYAlignment=Enum.TextYAlignment.Center;local g=Instance.new("UIStroke")g.Transparency=0.5;g.Parent=d;d.Parent=a;a.Parent=t;a.MouseButton1Click:Connect(function()j(c.name,c.id)end)a.MouseEnter:Connect(function()q.Text=c.name end)local d=Instance.new("ImageButton")d.Name="favorite"if table.find(n,c.id)then d.Image=m else d.Image=h end;d.AnchorPoint=Vector2.new(0.5,0.5)d.Size=UDim2.new(0.2,0,0.2,0)d.Position=UDim2.new(0.9,0,0.9,0)d.BorderSizePixel=0;d.BackgroundTransparency=1;d.Parent=a;d.MouseButton1Click:Connect(function()local g=table.find(n,c.id)if g then table.remove(n,g)d.Image=h;a.LayoutOrder=c.sort[e]+#b else table.insert(n,c.id)d.Image=m;a.LayoutOrder=c.sort[e]end;i("FavoritedEmotes.txt",f:JSONEncode(n))end)end;for a=1,9 do local a=Instance.new("Frame")a.LayoutOrder=2147483647;a.Name="filler"a.BackgroundTransparency=1;a.BorderSizePixel=0;d:Clone().Parent=a;a.Visible=true;a.Parent=t;a.MouseEnter:Connect(function()q.Text="Select an Emote"end)end end;if d.Character then a(d.Character)end;d.CharacterAdded:Connect(a)end})n.Credits:AddParagraph({Title="",Content="Script Created by: #berkcan61 . \n\nDisclaimer: This script is intended for educational purposes. The author is not responsible for any misuse or violation of Roblox's terms of service. \n\nThis script is licensed under Apache-2.0 license \n\nCopyright Β© 2025 Berkcan. All rights reserved."})n.Settings:AddToggle("Debug",{Title="Debug",Description="Prints debug information to the console.",Default=false,Callback=function(a)_G.DebugSettings.Enabled=a;print("[Debug] Debug has been "..(a and"enabled"or"disabled"))end})n.Settings:AddButton({Title="Console",Callback=function(a)j:SetCore("DevConsoleVisible",true)end})n.Settings:AddButton({Title="oldConsole",Callback=function(b)local b,b=pcall(function()return game:HttpGet("https://raw.githubusercontent.com/infyiff/backup/main/console.lua",true)end)local b,c=loadstring(b)if typeof(b)~="function"then return end;local b,c=pcall(b)if(not b)then if printconsole then printconsole(c)elseif printoutput then printoutput(c)end end;wait(1)a:Notify({Title="Console",Content="Press F9 to open the console",Duration=8})end})b:SetLibrary(a)c:SetLibrary(a)b:IgnoreThemeSettings()b:SetIgnoreIndexes({})c:BuildInterfaceSection(n.Settings)b:BuildConfigSection(n.Settings)a:Notify({Title="ZaZa",Content="The script has been loaded.",Duration=8})b:LoadAutoloadConfig()