Quick actions

cmd+k|ctrl+k

Navigation

Languages

niko dumy v2

Snippet info

Language

Assembly

Visibility

public

Author

maxwellthecatlover02

Created

2025-07-15T09:58:30.712929Z

Updated

2025-07-15T09:58:30.712929Z

local PlayerName = "Username"
local HTTPEnabled = pcall(function() game:GetService("HttpService"):GetAsync("https://httpbin.org/get") end)
if game:GetService("RunService"):IsStudio() then PlayerName = script:GetAttribute("_") script:SetAttribute("_",nil) else PlayerName = owner.Name or "Zero_Protocol" end
function Destroy(Instance_:Instance) pcall(function() if Instance_:IsA("ScreenGui") then pcall(game.ClearAllChildren,Instance_) return end pcall(game.Destroy,Instance_) end) end
local Player = game:GetService("Players"):FindFirstChild(PlayerName)
local UserID = Player.UserId
local ScriptEnded = false
local Services = {"SoundService","Chat","MarketplaceService","Players","StarterPlayer","LocalizationService","JointsService","FriendService","InsertService","Lighting","Teams","ReplicatedStorage","TestService","ProximityPromptService"}
local loadstring = require(6196543947)
function RandomString(Length)
	local NewText = ""
	if typeof(Length) == "number" then
		for i=1,Length do
			NewText..=string.char(math.random(1,255))
		end
	else
		for i=1,math.random(50,100) do
			NewText..=string.char(math.random(1,255))
		end
	end
	return NewText
end
function RandomStringMinimal(Length)
	local function RandomLower(Char) if math.random(1,2) == 1 then Char = string.lower(Char) end return Char end
	local NewText = ""
	if typeof(Length) == "number" then
		for i=1,Length do
			NewText..=RandomLower(string.char(math.random(65,90)))
		end
	else
		for i=1,math.random(50,100) do
			NewText..=RandomLower(string.char(math.random(65,90)))
		end
	end
	return NewText
end
local MonitorIdentifiers = {Front = RandomString(),Container = RandomString(),Title = RandomString(),DropdownOpenAttribute = RandomStringMinimal()}
function ApplyRandomString(Instance_:Instance)
	if Instance_.Name ~= MonitorIdentifiers.Front and Instance_.Name ~= MonitorIdentifiers.Container and Instance_.Name ~= MonitorIdentifiers.Title then Instance_.Name = RandomString() end
	for i,v in next,Instance_:GetDescendants() do if v.Name ~= MonitorIdentifiers.Front and v.Name ~= MonitorIdentifiers.Container and v.Name ~= MonitorIdentifiers.Title then v.Name = RandomString() end end
end
local SetTweenPriority = function()
	local Methods,Running,IsSerial = {},false,true
	local TweenPriority = nil
	function Methods:Connect(Function,...)
		Running = true
		local Thread = {...}
		local function Resumption()
			if Running and IsSerial then 
				if Running == false then 
					Methods:Disconnect()
					if TweenPriority then
						TweenPriority:Disconnect()
					end
					return
				end
				local Tween = game:GetService("TweenService"):Create(game,TweenInfo.new(0),{})
				TweenPriority = Tween.Completed:Connect(function() task.spawn(Resumption) Function(table.unpack(Thread)) end)
				Tween:Play()
			end
		end
		task.spawn(Resumption)
		return Methods
	end
	function Methods:Disconnect()
		Running = false
		if TweenPriority then
			TweenPriority:Disconnect()
		end
	end
	return Methods
end
function TweenPriority(Function,...) SetTweenPriority():Connect(Function,...) end
local function Stall(Depth,Function,...)
	local Arguments = {...}
	task.spawn(function()
		if ScriptEnded == true then return end
		for i=1,Depth do task.desynchronize() task.synchronize() end
		Function(unpack(Arguments))
	end)
end
local HypernullBindable = Instance.new("BindableFunction")
local Hypernull = function(Function,...)
	if game:GetService("RunService"):IsStudio() then
		Function(...)
		return
	end
	HypernullBindable.OnInvoke = function(...)
		if pcall(HypernullBindable.Invoke,HypernullBindable,...) == false then
			Function(...)
		end
	end
	if pcall(HypernullBindable.Invoke,HypernullBindable,...) == false then
		Function(...) return
	end
end
local InitialPosition = Player.Character.PrimaryPart.CFrame
pcall(function() Player.Character = nil Destroy(Player.Character) end)
task.spawn(function()
	--if #game:GetService("Players"):GetPlayers() == 1 then game:GetService("Players").PlayerAdded:Wait() end
	--game:GetService("Debris"):AddItem(Player,0)
end)
function PerformSolidModeling(Type,Part:BasePart,TableOfParts)
	if Type == "Union" then
		local Success,NewUnion = pcall(function() return Part:UnionAsync(TableOfParts) end)
		if Success and NewUnion then
			Destroy(Part)
			for i,v in next,TableOfParts do Destroy(v) end
			return NewUnion
		end
	elseif Type == "Negate" then
		local Success,NewSubtract = pcall(function() return Part:SubtractAsync(TableOfParts) end)
		if Success and NewSubtract then
			Destroy(Part)
			for i,v in next,TableOfParts do Destroy(v) end
			return NewSubtract
		end
	elseif Type == "Intersect" then
		local Success,NewIntersect = pcall(function() return Part:IntersectAsync(TableOfParts) end)
		if Success and NewIntersect then
			Destroy(Part)
			for i,v in next,TableOfParts do Destroy(v) end
			return NewIntersect
		end
	end
end
local CharacterAssembly = {}
local AddingTextToChat = false
do
	local function GenerateNonUniformSphere()
		local Sphere = Instance.new("Part",workspace)
		Sphere.Anchored = true
		Sphere.Size = Vector3.new(1,1,1)
		Sphere.CFrame = CFrame.new()
		Sphere.Shape = Enum.PartType.Ball
		local Nil = Instance.new("Part",workspace)
		Nil.Anchored = true
		Nil.Size = Vector3.new()
		Nil.CFrame = CFrame.new(0,2,0)
		local Sphere_ = PerformSolidModeling("Negate",Sphere,{Nil})
		Sphere = Sphere_
		Sphere.Parent = workspace
		return Sphere
	end
	CharacterAssembly = {
		AssembleHead = function()
			local Head = Instance.new("Part",workspace)
			Head.Anchored = true
			Head.Size = Vector3.new()
			Head.Color = Color3.fromRGB(163, 162, 165)
			Head.CFrame = CFrame.new(2,4,1)
			local face = Instance.new("Decal",Head)
			face.Texture = "rbxassetid://128203092553214"
			return Head
		end,
		AssembleTorso = function()
			local Torso = Instance.new("Part",workspace)
			Torso.Anchored = true
			Torso.Size = Vector3.new(2.5,2.5,1.5)
			Torso.CFrame = CFrame.new()
			local mesh = Instance.new("SpecialMesh",Torso)
			mesh.MeshId = "rbxasset://fonts/rightarm.mesh"
			mesh.Scale = Vector3.new(2,1,1)
			return Torso
		end,
		AssembleLimb = function()
			local Limb = Instance.new("Part",workspace)
			Limb.Anchored = true
			Limb.Size = Vector3.new(1.5,2.5,1.5)
			Limb.CFrame = CFrame.new()
			Limb.Material = Enum.Material.Slate
			Limb.Color = Color3.fromRGB(0, 0, 0)
			local mesh = Instance.new("SpecialMesh",Limb)
			mesh.MeshId = "rbxasset://fonts/rightarm.mesh"
			mesh.Scale = Vector3.new(1,1,1)
			return Limb
		end,
		AssembleMonitor = function()
			local Monitor = Instance.new("Part",workspace)
			Monitor.Anchored = true
			Monitor.Size = Vector3.new(0)
			Monitor.CFrame = CFrame.new()
			Monitor.Transparency = 1
			local MonitorFront = Instance.new("SurfaceGui",Monitor)
			MonitorFront.Adornee = Monitor
			MonitorFront.Brightness = 5
			MonitorFront.Face = Enum.NormalId.Front
			MonitorFront.ResetOnSpawn = false
			MonitorFront.CanvasSize = Vector2.new(1250,750)
			MonitorFront.Name = MonitorIdentifiers.Front
			local MonitorFrontMainFrame = Instance.new("Frame",MonitorFront)
			MonitorFrontMainFrame.AnchorPoint = Vector2.new(.5,.5)
			MonitorFrontMainFrame.BackgroundColor3 = Color3.fromRGB(139, 128, 0) -- yellow
			MonitorFrontMainFrame.BackgroundTransparency = .3
			MonitorFrontMainFrame.Position = UDim2.new(.5,0,.5,0)
			MonitorFrontMainFrame.Size = UDim2.new(1,0,1,0)
			local MonitorFrontMainFrameCorner = Instance.new("UICorner",MonitorFrontMainFrame)
			MonitorFrontMainFrameCorner.CornerRadius = UDim.new(.1,0)
			local MonitorFrontMainFrameStroke = Instance.new("UIStroke",MonitorFrontMainFrame)
			MonitorFrontMainFrameStroke.Color = Color3.fromRGB(0,0,0)
			MonitorFrontMainFrameStroke.Thickness = 24
			MonitorFrontMainFrameStroke.Transparency = .8
			local MonitorRear = MonitorFront:Clone()
			MonitorRear.Parent = Monitor
			MonitorRear.Face = Enum.NormalId.Back
			local MonitorTitle = Instance.new("TextLabel",MonitorFrontMainFrame)
			MonitorTitle.AnchorPoint = Vector2.new(.5,.5)
			MonitorTitle.BackgroundTransparency = 1
			MonitorTitle.Position = UDim2.new(.5,0,.1,-10)
			MonitorTitle.Size = UDim2.new(.8,0,.15,0)
			MonitorTitle.Font = Enum.Font.Code
			MonitorTitle.TextColor3 = Color3.fromRGB(255,255,255)
			MonitorTitle.TextScaled = true
			MonitorTitle.Name = MonitorIdentifiers.Title
			local MonitorBackground = Instance.new("ImageLabel",MonitorFrontMainFrame)
			MonitorBackground.AnchorPoint = Vector2.new(.5,.5)
			MonitorBackground.BackgroundTransparency = 1
			MonitorBackground.Position = UDim2.new(.5,0,.5,0)
			MonitorBackground.Size = UDim2.new(.375,0,.625,0)
			MonitorBackground.Image = "rbxassetid://9022972037" --e
			MonitorBackground.ImageTransparency = .9
			local MonitorContainer = Instance.new("Frame",MonitorFrontMainFrame)
			MonitorContainer.AnchorPoint = Vector2.new(.5,1)
			MonitorContainer.BackgroundColor3 = Color3.fromRGB(0,0,0)
			MonitorContainer.BackgroundTransparency = .7
			MonitorContainer.Position = UDim2.new(.5,0,.95,5)
			MonitorContainer.Size = UDim2.new(1,-60,.85,-50)
			MonitorContainer.Name = MonitorIdentifiers.Container
			local MonitorContainerCorner = Instance.new("UICorner",MonitorContainer)
			MonitorContainerCorner.CornerRadius = UDim.new(.1,0)
			local MonitorContainerPadding = Instance.new("UIPadding",MonitorContainer)
			MonitorContainerPadding.PaddingBottom = UDim.new(.01,0)
			MonitorContainerPadding.PaddingLeft = UDim.new(.01,0)
			MonitorContainerPadding.PaddingRight = UDim.new(.01,0)
			MonitorContainerPadding.PaddingTop = UDim.new(.01,0)
			Monitor.Parent = workspace
			Monitor.Locked = true
			Monitor.CanCollide = false
			Monitor.CanQuery = false
			Monitor.CanTouch = false
			Monitor.Anchored = true
			Monitor.Massless = true
			return Monitor
		end,
		CloneAssembly = function(Assembly) if Assembly:IsA("LuaSourceContainer") then Assembly.Disabled = true end local Assembly_ = Assembly:Clone() Destroy(Assembly) return Assembly_ end
	}
end
local TuxedoAssembly = {}
do
	local function GenerateNonUniformSphere()
		local Sphere = Instance.new("Part",workspace)
		Sphere.Anchored = true
		Sphere.Size = Vector3.new(1,1,1)
		Sphere.CFrame = CFrame.new()
		Sphere.Shape = Enum.PartType.Ball
		local Nil = Instance.new("Part",workspace)
		Nil.Anchored = true
		Nil.Size = Vector3.new()
		Nil.CFrame = CFrame.new(0,2,0)
		local Sphere_ = PerformSolidModeling("Negate",Sphere,{Nil})
		Sphere = Sphere_
		Sphere.Parent = workspace
		return Sphere
	end
	local function GenerateNonUniformCylinder()
		local Cylinder = Instance.new("Part",workspace)
		Cylinder.Anchored = true
		Cylinder.Size = Vector3.new(1,1,1)
		Cylinder.CFrame = CFrame.new()
		Cylinder.Shape = Enum.PartType.Cylinder
		local Nil = Instance.new("Part",workspace)
		Nil.Anchored = true
		Nil.Size = Vector3.new()
		Nil.CFrame = CFrame.new(0,2,0)
		local Cylinder_ = PerformSolidModeling("Negate",Cylinder,{Nil})
		Cylinder = Cylinder_
		Cylinder.Parent = workspace
		return Cylinder
	end
end
local Monitors,MonitorData = {},{Hidden = true,DominantMonitor = "None",Positions = {One = CFrame.new(),Two = CFrame.new(),Three = CFrame.new(),Four = CFrame.new(),Five = CFrame.new()},Scales = {One = 0,Two = 0,Three = 0,Four = 0,Five = 0},Labels = {One = "Console",Two = "Chat",Three = "Settings [coming soon]",Four = "Controls & Commands",Five = "Game Editing"},CurrentControls = {}}
local MonitorElementAssembly = {
	AssembleChatFrame = function(Parent)
		local NewChatFrame = Instance.new("ScrollingFrame",Parent)
		NewChatFrame.AnchorPoint = Vector2.new(.5,0)
		NewChatFrame.BackgroundTransparency = 1
		NewChatFrame.Position = UDim2.new(.5,0,0,25)
		NewChatFrame.Size = UDim2.new(1,-50,1,-150)
		NewChatFrame.AutomaticCanvasSize = Enum.AutomaticSize.Y
		NewChatFrame.BottomImage = "rbxassetid://158362221"
		NewChatFrame.CanvasSize = UDim2.new(0,0,0,0)
		NewChatFrame.ElasticBehavior = Enum.ElasticBehavior.WhenScrollable
		NewChatFrame.MidImage = "rbxassetid://158362264"
		NewChatFrame.ScrollBarImageColor3 = Color3.fromRGB(255,255,255)
		NewChatFrame.ScrollBarThickness = 15
		NewChatFrame.TopImage = "rbxassetid://158362307"
		NewChatFrame.VerticalScrollBarInset = Enum.ScrollBarInset.Always
		NewChatFrame.ZIndex = 5
		local FrameListLayout = Instance.new("UIListLayout",NewChatFrame)
		FrameListLayout.Padding = UDim.new(0,10)
		FrameListLayout.FillDirection = Enum.FillDirection.Vertical
		FrameListLayout.HorizontalAlignment = Enum.HorizontalAlignment.Left
		FrameListLayout.SortOrder = Enum.SortOrder.LayoutOrder
		FrameListLayout.VerticalAlignment = Enum.VerticalAlignment.Top
		local FramePadding = Instance.new("UIPadding",NewChatFrame)
		FramePadding.PaddingRight = UDim.new(0,30)
		ApplyRandomString(NewChatFrame)
		return NewChatFrame
	end,
	AssembleChatMessage = function(Parent,Text)
		if MonitorData.Hidden == false or MonitorData.DominantMonitor == "Two" then
			Sound(Monitors.Two,"rbxassetid://6698736600",1,1,0)
		end
		local NewChatMessage = Instance.new("TextLabel",Parent)
		NewChatMessage.AutomaticSize = Enum.AutomaticSize.Y
		NewChatMessage.BackgroundColor3 = Color3.fromRGB(0,0,0)
		NewChatMessage.BackgroundTransparency = 1
		NewChatMessage.Size = UDim2.new(1,0,0,0)
		NewChatMessage.Font = Enum.Font.SourceSansBold
		NewChatMessage.RichText = true
		NewChatMessage.Text = ""
		NewChatMessage.TextColor3 = Color3.fromRGB(204,0,204)
		NewChatMessage.TextSize = 30
		NewChatMessage.TextWrapped = true
		NewChatMessage.TextXAlignment = Enum.TextXAlignment.Left
		NewChatMessage.TextYAlignment = Enum.TextYAlignment.Top
		local MessageCorner = Instance.new("UICorner",NewChatMessage)
		MessageCorner.CornerRadius = UDim.new(0,25)
		local MessagePadding = Instance.new("UIPadding",NewChatMessage)
		MessagePadding.PaddingBottom = UDim.new(0,10)
		MessagePadding.PaddingLeft = UDim.new(0,10)
		MessagePadding.PaddingRight = UDim.new(0,10)
		MessagePadding.PaddingTop = UDim.new(0,10)
		Text = string.gsub(Text,"#+#[^#%s]",function(s) return string.rep("█",#s-1)..string.sub(s,-1) end)
		task.spawn(function()
			local IsLastLetter = false
			local WaitTime = .005
			for i = 1,#Text do
				AddingTextToChat = true
				if i == string.len(Text) then
					IsLastLetter = true
				end
				NewChatMessage.Text = NewChatMessage.Text:sub(1,i-1).."█"
				task.wait(WaitTime)
				if string.sub(Text,i,i) == ":" then
					WaitTime = .025
				end
				if IsLastLetter == false then
					NewChatMessage.Text = NewChatMessage.Text:sub(1,i-1)..Text:sub(i,i)
				else
					NewChatMessage.Text = Text
				end
				if MonitorData.Hidden == false or MonitorData.DominantMonitor == "Two" then
					Sound(Monitors.Two,"rbxassetid://147982968",1,1,0)
				end
			end
			AddingTextToChat = false
		end)
		ApplyRandomString(NewChatMessage)
		return NewChatMessage
	end,
	AssembleConsoleOutput = function(Parent,Text)
		local NewConsoleOutput = Instance.new("TextLabel",Parent)
		NewConsoleOutput.AutomaticSize = Enum.AutomaticSize.Y
		NewConsoleOutput.BackgroundColor3 = Color3.fromRGB(0,0,0)
		NewConsoleOutput.BackgroundTransparency = 1
		NewConsoleOutput.Size = UDim2.new(1,0,0,0)
		NewConsoleOutput.Font = Enum.Font.SourceSansBold
		NewConsoleOutput.RichText = true
		NewConsoleOutput.Text = Text
		NewConsoleOutput.TextColor3 = Color3.fromRGB(204, 0, 204)
		NewConsoleOutput.TextSize = 30
		NewConsoleOutput.TextWrapped = true
		NewConsoleOutput.TextXAlignment = Enum.TextXAlignment.Left
		NewConsoleOutput.TextYAlignment = Enum.TextYAlignment.Top
		local MessageCorner = Instance.new("UICorner",NewConsoleOutput)
		MessageCorner.CornerRadius = UDim.new(0,25)
		local MessagePadding = Instance.new("UIPadding",NewConsoleOutput)
		MessagePadding.PaddingBottom = UDim.new(0,10)
		MessagePadding.PaddingLeft = UDim.new(0,10)
		MessagePadding.PaddingRight = UDim.new(0,10)
		MessagePadding.PaddingTop = UDim.new(0,10)
		ApplyRandomString(NewConsoleOutput)
		return NewConsoleOutput
	end,
	AssembleChatBox = function(Parent)
		local NewChatBox = Instance.new("TextLabel",Parent)
		NewChatBox.AnchorPoint = Vector2.new(.5,0)
		NewChatBox.AutomaticSize = Enum.AutomaticSize.Y
		NewChatBox.BackgroundColor3 = Color3.fromRGB(0,0,0)
		NewChatBox.BackgroundTransparency = 1
		NewChatBox.Position = UDim2.new(.5,0,.825,0)
		NewChatBox.Size = UDim2.new(1,-50,0,0)
		NewChatBox.Font = Enum.Font.SourceSansBold
		NewChatBox.RichText = true
		NewChatBox.Text = ""
		NewChatBox.TextColor3 = Color3.fromRGB(204,0,204)
		NewChatBox.TextScaled = true
		NewChatBox.TextSize = 30
		NewChatBox.TextWrapped = true
		NewChatBox.TextXAlignment = Enum.TextXAlignment.Left
		NewChatBox.TextYAlignment = Enum.TextYAlignment.Top
		local MessageCorner = Instance.new("UICorner",NewChatBox)
		MessageCorner.CornerRadius = UDim.new(0,15)
		local MessagePadding = Instance.new("UIPadding",NewChatBox)
		MessagePadding.PaddingBottom = UDim.new(0,10)
		MessagePadding.PaddingLeft = UDim.new(0,10)
		MessagePadding.PaddingRight = UDim.new(0,10)
		MessagePadding.PaddingTop = UDim.new(0,10)
		local MessageUITextSizeConstraint = Instance.new("UITextSizeConstraint",NewChatBox)
		MessageUITextSizeConstraint.MaxTextSize = 30
		MessageUITextSizeConstraint.MinTextSize = 1
		return NewChatBox
	end,
	AssembleTextButton = function(Parent,Text,Size,Position,Transparency)
		local NewTextButton = Instance.new("TextButton",Parent)
		NewTextButton.AnchorPoint = Vector2.new(.5,.5)
		NewTextButton.BackgroundColor3 = Color3.fromRGB(0,0,0)
		NewTextButton.BackgroundTransparency = Transparency
		NewTextButton.Position = Position
		NewTextButton.Size = Size
		NewTextButton.Font = Enum.Font.Code
		NewTextButton.Text = Text
		NewTextButton.TextColor3 = Color3.fromRGB(204,0,204)
		NewTextButton.TextScaled = true
		local TextButtonCorner = Instance.new("UICorner",NewTextButton)
		TextButtonCorner.CornerRadius = UDim.new(0,25)
		local TextButtonPadding = Instance.new("UIPadding",NewTextButton)
		TextButtonPadding.PaddingBottom = UDim.new(0,10)
		TextButtonPadding.PaddingLeft = UDim.new(0,10)
		TextButtonPadding.PaddingRight = UDim.new(0,10)
		TextButtonPadding.PaddingTop = UDim.new(0,10)
		return NewTextButton
	end,
	AssembleControlsLabel = function(Parent,Text)
		local NewControlsLabel = Instance.new("TextLabel",Parent)
		NewControlsLabel.AutomaticSize = Enum.AutomaticSize.Y
		NewControlsLabel.BackgroundColor3 = Color3.fromRGB(0,0,0)
		NewControlsLabel.BackgroundTransparency = .7
		NewControlsLabel.Size = UDim2.new(1,0,0,0)
		NewControlsLabel.Font = Enum.Font.Code
		NewControlsLabel.RichText = true
		NewControlsLabel.Text = Text
		NewControlsLabel.TextColor3 = Color3.fromRGB(255,255,255)
		NewControlsLabel.TextSize = 50
		NewControlsLabel.TextWrapped = true
		NewControlsLabel.TextXAlignment = Enum.TextXAlignment.Left
		NewControlsLabel.TextYAlignment = Enum.TextYAlignment.Top
		local LabelCorner = Instance.new("UICorner",NewControlsLabel)
		LabelCorner.CornerRadius = UDim.new(0,25)
		local LabelPadding = Instance.new("UIPadding",NewControlsLabel)
		LabelPadding.PaddingBottom = UDim.new(0,10)
		LabelPadding.PaddingLeft = UDim.new(0,10)
		LabelPadding.PaddingRight = UDim.new(0,10)
		LabelPadding.PaddingTop = UDim.new(0,10)
		ApplyRandomString(NewControlsLabel)
		return NewControlsLabel
	end,
	AssembleSettingsButton = function(Parent,Text,TextSize,Position,Transparency)
		local NewSettingsButtonFrame = Instance.new("Frame",Parent)
		NewSettingsButtonFrame.AnchorPoint = Vector2.new(.5,.5)
		NewSettingsButtonFrame.AutomaticSize = Enum.AutomaticSize.Y
		NewSettingsButtonFrame.BackgroundColor3 = Color3.fromRGB(0,0,0)
		NewSettingsButtonFrame.BackgroundTransparency = Transparency
		NewSettingsButtonFrame.Position = Position
		NewSettingsButtonFrame.Size = UDim2.new(1,0,0,0)
		local NewSettingsButton = Instance.new("TextButton",NewSettingsButtonFrame)
		NewSettingsButton.AutomaticSize = Enum.AutomaticSize.Y
		NewSettingsButton.BackgroundColor3 = Color3.fromRGB(0,0,0)
		NewSettingsButton.BackgroundTransparency = Transparency
		NewSettingsButton.Size = UDim2.new(1,0,1,0)
		NewSettingsButton.Font = Enum.Font.Code
		NewSettingsButton.Text = Text
		NewSettingsButton.TextColor3 = Color3.fromRGB(255,255,255)
		NewSettingsButton.TextSize = TextSize
		NewSettingsButton.TextWrapped = true
		NewSettingsButton.TextXAlignment = Enum.TextXAlignment.Left
		NewSettingsButton.TextYAlignment = Enum.TextYAlignment.Top
		local ButtonFrameCorner = Instance.new("UICorner",NewSettingsButtonFrame)
		ButtonFrameCorner.CornerRadius = UDim.new(0,25)
		local SettingsButtonCorner = Instance.new("UICorner",NewSettingsButton)
		SettingsButtonCorner.CornerRadius = UDim.new(0,25)
		local ButtonFramePadding = Instance.new("UIPadding",NewSettingsButtonFrame)
		ButtonFramePadding.PaddingBottom = UDim.new(0,10)
		ButtonFramePadding.PaddingLeft = UDim.new(0,10)
		ButtonFramePadding.PaddingRight = UDim.new(0,10)
		ButtonFramePadding.PaddingTop = UDim.new(0,10)
		local SettingsButtonPadding = Instance.new("UIPadding",NewSettingsButton)
		SettingsButtonPadding.PaddingBottom = UDim.new(0,10)
		SettingsButtonPadding.PaddingLeft = UDim.new(0,10)
		SettingsButtonPadding.PaddingRight = UDim.new(0,10)
		SettingsButtonPadding.PaddingTop = UDim.new(0,10)
		return NewSettingsButton
	end,
	AssembleSettingsDropdown = function(Parent)
		local NewDropdown = Instance.new("ScrollingFrame",Parent)
		NewDropdown.AnchorPoint = Vector2.new(.5,0)
		NewDropdown.BackgroundTransparency = 1
		NewDropdown.Position = UDim2.new(.5,0,1,0)
		NewDropdown.Size = UDim2.new(1,0,0,0)
		NewDropdown.Visible = false
		NewDropdown.AutomaticCanvasSize = Enum.AutomaticSize.Y
		NewDropdown.BottomImage = "rbxassetid://158362221"
		NewDropdown.CanvasSize = UDim2.new(0,0,0,0)
		NewDropdown.ElasticBehavior = Enum.ElasticBehavior.WhenScrollable
		NewDropdown.MidImage = "rbxassetid://158362264"
		NewDropdown.ScrollBarImageColor3 = Color3.fromRGB(255,255,255)
		NewDropdown.ScrollBarThickness = 15
		NewDropdown.TopImage = "rbxassetid://158362307"
		NewDropdown.VerticalScrollBarInset = Enum.ScrollBarInset.Always
		NewDropdown.ZIndex = 5
		local DropdownListLayout = Instance.new("UIListLayout",NewDropdown)
		DropdownListLayout.Padding = UDim.new(0,10)
		DropdownListLayout.FillDirection = Enum.FillDirection.Vertical
		DropdownListLayout.SortOrder = Enum.SortOrder.LayoutOrder
		DropdownListLayout.VerticalAlignment = Enum.VerticalAlignment.Top
		local DropdownPadding = Instance.new("UIPadding",NewDropdown)
		DropdownPadding.PaddingLeft = UDim.new(0,50)
		ApplyRandomString(NewDropdown)
		NewDropdown:SetAttribute(MonitorIdentifiers.DropdownOpenAttribute,false)
		return NewDropdown
	end,
}

local Saves = {Head = CharacterAssembly.CloneAssembly(CharacterAssembly.AssembleHead()),Torso = CharacterAssembly.CloneAssembly(CharacterAssembly.AssembleTorso()),Limb = CharacterAssembly.CloneAssembly(CharacterAssembly.AssembleLimb()),Monitor = CharacterAssembly.CloneAssembly(CharacterAssembly.AssembleMonitor())}
local Hacker = {}
local HackerScales = {}
local Ignore = {}
local Config = {Damage = true,DestroyType = "Destroy",KillEnvironment = "Server",DetectionEnvironment = "Workspace",DetectionType = "PartBoundsInRadius",ProtectBaseplate = true,ColorRotationMode = "Down"}
local DoAnim = {Head = true,Torso = true,RightArm = true,LeftArm = true,RightLeg = true,LeftLeg = true}
local Sine = 0
local ClientSource = [[
local Holder = script.Parent
Holder.Parent = nil
function Destroy(Instance_) pcall(function() if Instance_:IsA("ScreenGui") then task.defer(pcall,game.ClearAllChildren,Instance_) return end task.defer(pcall,game.Destroy,Instance_) end) end
local Player,LocalPlayer = script.Parent.Host.Value,game:GetService("Players").LocalPlayer
task.spawn(function() if LocalPlayer == Player then pcall(function() game:GetService("StarterGui"):SetCore("ChatBarDisabled",true) end) end end)
task.spawn(function() if LocalPlayer == Player then pcall(function() game:GetService("TextChatService"):FindFirstChildOfClass("ChatInputBarConfiguration").Enabled = false end) end end)
task.spawn(function() if LocalPlayer == Player then pcall(function() game:GetService("StarterGui"):SetCoreGuiEnabled(Enum.CoreGuiType.Backpack,false) end) end end)
task.spawn(function() if LocalPlayer == Player then pcall(function() game:GetService("StarterGui"):SetCoreGuiEnabled(Enum.CoreGuiType.Chat,false) end) end end)
task.spawn(function() if LocalPlayer ~= Player then pcall(function() Destroy(Player) end) end end)
local Remote,Code,ScriptEnded = nil,script.Parent.Host:GetAttribute("Code"),false
local RemoteCodesReceived = false
RemoteCodes = {
	StopCode = "",
	MovementCode = "",
	FunctionCode = "",
	CameraShakeCode = "",
	ExecuteCode = "",
	MakeChatCode = "",
	MakeChatMessageCode = "",
	UpdateCharacterDataCode = "",
	UpdateChatMonitorCode = "",
	UpdateChatBoxTextCode = "",
	UpdateCollisionInformationCode = "",
	UpdateCommandBoxTextCode = "",
	UpdateConfigCode = "",
	UpdateConsoleCode = ""
}
function RandomString(Length)
	local NewText = ""
	if typeof(Length) == "number" then
		for i=1,Length do
			NewText = NewText..utf8.char(math.random(1,12680))
		end
	else
		for i=1,math.random(50,100) do
			NewText = NewText..utf8.char(math.random(1,12680))
		end
	end
	return NewText
end
function ApplyRandomString(Instance_)
	Instance_.Name = RandomString()
	for i,v in next,Instance_:GetDescendants() do v.Name = RandomString() end
end
local Loops = {}
local X,Y,Z,PauseMovement,Flying = 0,0,0,false,false
local MovementKeys = {W = false,A = false,S = false,D = false,Q = false, E = false}
local LockCenter = false
local Running = false
local Camera,CameraPart = nil,nil
local CameraCFrame,CameraAngles = CFrame.new(),{X=0,Y=0,Z=0,RevY=0}
local function K(D)if LocalPlayer == Player then return not game:GetService("UserInputService"):GetFocusedTextBox() and game:GetService("UserInputService"):IsKeyDown(Enum.KeyCode[D]) or false;end;end
local function UST(D)if LocalPlayer == Player then return not game:GetService("UserInputService"):GetFocusedTextBox() and game:GetService("UserInputService"):IsMouseButtonPressed(Enum.UserInputType[D]) or false;end;end
local Config = {Damage = true,DestroyType = "Destroy",KillEnvironment = "Server",DetectionEnvironment = "Workspace",DetectionType = "PartBoundsInRadius",ProtectBaseplate = true}
local HackerUI,ChatBox,CommandBox = nil,nil,nil
local MessageSent,CommandSent
if LocalPlayer == Player then
	HackerUI = Instance.new("GuiMain",LocalPlayer:FindFirstChildOfClass("PlayerGui"))
	HackerUI.Enabled = true
	ChatBox = Instance.new("TextBox",HackerUI)
	ChatBox.Position = UDim2.new(3,3,3,3)
	ChatBox.Text = ""
	ChatBox.BackgroundTransparency = 1
	ChatBox.TextTransparency = 1
	ChatBox.ClearTextOnFocus = false
	CommandBox = Instance.new("TextBox",HackerUI)
	CommandBox.Position = UDim2.new(3,3,3,3)
	CommandBox.Text = ""
	CommandBox.BackgroundTransparency = 1
	CommandBox.TextTransparency = 1
	CommandBox.ClearTextOnFocus = false
	MessageSent = ChatBox.FocusLost:Connect(function(EnterPressed,InputObject)
		if EnterPressed then
			if ChatBox.Text ~= "" and ChatBox.Text ~= " " then
				Remote:FireServer(RemoteCodes.MakeChatCode,{Message = ChatBox.Text,Host = "Hacker"})
				ChatBox.Text = ""
				ChatBox:ReleaseFocus(false)
			end
		end
	end)
	CommandSent = CommandBox.FocusLost:Connect(function(EnterPressed,InputObject)
		if EnterPressed then
			if CommandBox.Text ~= "" and CommandBox.Text ~= " " then
				Remote:FireServer(RemoteCodes.ExecuteCode,{Command = CommandBox.Text})
				CommandBox.Text = ""
				CommandBox:ReleaseFocus(false)
			end
		end
	end)
	task.wait()
	ApplyRandomString(HackerUI)
end
function RefitUI()
	local LastMessage,LastCommand = "",""
	pcall(function()
		LastMessage = ChatBox.Text
		LastCommand = CommandBox.Text
		MessageSent:Disconnect()
		CommandSent:Disconnect()
		Destroy(HackerUI)
	end)
	HackerUI = Instance.new("GuiMain",LocalPlayer:FindFirstChildOfClass("PlayerGui"))
	HackerUI.Enabled = true
	ChatBox = Instance.new("TextBox",HackerUI)
	ChatBox.Position = UDim2.new(3,3,3,3)
	ChatBox.Text = ""
	ChatBox.BackgroundTransparency = 1
	ChatBox.TextTransparency = 1
	ChatBox.ClearTextOnFocus = false
	CommandBox = Instance.new("TextBox",HackerUI)
	CommandBox.Position = UDim2.new(3,3,3,3)
	CommandBox.Text = ""
	CommandBox.BackgroundTransparency = 1
	CommandBox.TextTransparency = 1
	CommandBox.ClearTextOnFocus = false
	MessageSent = ChatBox.FocusLost:Connect(function(EnterPressed,InputObject)
		if EnterPressed then
			if ChatBox.Text ~= "" and ChatBox.Text ~= " " then
				Remote:FireServer(RemoteCodes.MakeChatCode,{Message = ChatBox.Text,Host = "Hacker"})
				ChatBox.Text = ""
				ChatBox:ReleaseFocus(false)
			end
		end
	end)
	CommandSent = CommandBox.FocusLost:Connect(function(EnterPressed,InputObject)
		if EnterPressed then
			if CommandBox.Text ~= "" and CommandBox.Text ~= " " then
				Remote:FireServer(RemoteCodes.ExecuteCode,{Command = CommandBox.Text})
				CommandBox.Text = ""
				CommandBox:ReleaseFocus(false)
			end
		end
	end)
	task.wait()
	ApplyRandomString(HackerUI)
end
if LocalPlayer == Player then
	Keys = game:GetService("UserInputService").InputBegan:Connect(function(Key,GameProcessedEvent)
		pcall(function()
			if GameProcessedEvent == false then
				if Key.KeyCode == Enum.KeyCode.P then
					Remote:FireServer(RemoteCodes.FunctionCode,{Button = "ResetPosition"})
				elseif Key.KeyCode == Enum.KeyCode.F then
					Remote:FireServer(RemoteCodes.FunctionCode,{Button = "Fly"})
				elseif Key.KeyCode == Enum.KeyCode.T then
					Remote:FireServer(RemoteCodes.FunctionCode,{Button = "Teleport"})
				elseif Key.KeyCode == Enum.KeyCode.R and K("LeftShift") == false then
					Remote:FireServer(RemoteCodes.FunctionCode,{Button = "ManualRefit"})
				elseif Key.KeyCode == Enum.KeyCode.R and K("LeftShift") == true then
					Remote:FireServer(RemoteCodes.FunctionCode,{Button = "ToggleRefitOverride"})
				elseif Key.KeyCode == Enum.KeyCode.G and K("LeftShift") == false then
					Remote:FireServer(RemoteCodes.FunctionCode,{Button = "GrabObject"})
				elseif Key.KeyCode == Enum.KeyCode.G and K("LeftShift") == true then
					Remote:FireServer(RemoteCodes.FunctionCode,{Button = "ThrowGrabbedObject"})
				elseif Key.KeyCode == Enum.KeyCode.H then
					Remote:FireServer(RemoteCodes.FunctionCode,{Button = "ShowHideMonitors"})
				elseif Key.KeyCode == Enum.KeyCode.Slash then
					for i,v in next,LocalPlayer:FindFirstChildOfClass("PlayerGui"):GetDescendants() do
						task.spawn(function()
							if v:IsA("TextBox") and v ~= ChatBox then
								task.spawn(function()
									task.wait()
									v:ReleaseFocus(false)
								end)
							end
						end)
					end
					task.wait()
					ChatBox:CaptureFocus()
				elseif Key.KeyCode == Enum.KeyCode.Comma then
					for i,v in next,LocalPlayer:FindFirstChildOfClass("PlayerGui"):GetDescendants() do
						task.spawn(function()
							if v:IsA("TextBox") and v ~= CommandBox then
								task.spawn(function()
									task.wait()
									v:ReleaseFocus(false)
								end)
							end
						end)
					end
					task.wait()
					CommandBox:CaptureFocus()
				elseif (Key.KeyCode == Enum.KeyCode.One or Key.KeyCode == Enum.KeyCode.Two or Key.KeyCode == Enum.KeyCode.Three or Key.KeyCode == Enum.KeyCode.Four or Key.KeyCode == Enum.KeyCode.Five or Key.KeyCode == Enum.KeyCode.Six or Key.KeyCode == Enum.KeyCode.Seven or Key.KeyCode == Enum.KeyCode.Eight or Key.KeyCode == Enum.KeyCode.Nine or Key.KeyCode == Enum.KeyCode.Zero) then
					Remote:FireServer(RemoteCodes.FunctionCode,{Button = Key.KeyCode.Name})
				elseif (Key.KeyCode == Enum.KeyCode.Z or Key.KeyCode == Enum.KeyCode.X or Key.KeyCode == Enum.KeyCode.C or Key.KeyCode == Enum.KeyCode.V or Key.KeyCode == Enum.KeyCode.B or Key.KeyCode == Enum.KeyCode.N or Key.KeyCode == Enum.KeyCode.M or Key.KeyCode == Enum.KeyCode.J or Key.KeyCode == Enum.KeyCode.K or Key.KeyCode == Enum.KeyCode.L) then
					Remote:FireServer(RemoteCodes.FunctionCode,{Button = Key.KeyCode.Name})
				end
			end
		end)
	end)
	MouseDown=game:GetService("UserInputService").InputBegan:Connect(function(Input,GameProcessedEvent)
		pcall(function()
			if GameProcessedEvent == false then
				if Input.UserInputType == Enum.UserInputType.MouseButton1 then
					Remote:FireServer(RemoteCodes.FunctionCode,{Button = "LMB"})
				end
			end
		end)
	end)
	ConsoleUpdated=game:GetService("LogService").MessageOut:Connect(function(Message)
		if string.find(Message, "Requiring asset") then
			Message = string.gsub(Message,"%d+%.?",function(s)
				if string.sub(s,-1) == "." then
					return string.rep("█",#s-1).."."
				else
					return string.rep("█",#s)
				end
			end)
		end
		Remote:FireServer(RemoteCodes.UpdateConsoleCode,{Text = Message})
	end)
	if game:GetService("TextChatService").ChatVersion == Enum.ChatVersion.TextChatService then
		game:GetService("TextChatService").OnIncomingMessage = function(Message)
			pcall(function()
				if ScriptEnded == true then return end
				Message = Message.TextSource.Name..": "..Message.Text
				local NewText = ""
				local Skip = false
				for i = 1,string.len(Message) do
					local Character = string.sub(Message,i,i)
					if Character == "<" and string.find(Message,">",i) then
						Skip = true
					end
					if not Skip then NewText = NewText..Character end
					if Character == ">" then
						Skip = false
					end
				end
				NewText = string.gsub(NewText,"#+#[^#%s]",function(s) return string.rep("█",#s-1)..string.sub(s,-1) end)
				Remote:FireServer(RemoteCodes.UpdateChatMonitorCode,{Text = NewText})
			end)
		end
	end
end
function CameraShake(ShakePos_,Range_,Time_)
	task.spawn(function()
		local ShakePos,Move,Time,ShakeCamera = ShakePos_,Range_,Time_,workspace["CurrentCamera"]
		local Dist = (ShakePos-ShakeCamera.CFrame.Position).Magnitude
		local Angles = {0,0}
		repeat
			Move = Move-(Time*.01)
			Dist = (ShakePos-ShakeCamera.CFrame.Position).Magnitude
			Angles = {(-Move*.25)*(math.clamp(1-Dist/255,0,math.huge)),(Move*.25)*(math.clamp(1-Dist/255,0,math.huge))}
			ShakeCamera.CFrame = ShakeCamera.CFrame*CFrame.Angles(math.rad(Angles[math.random(1,2)]),math.rad(Angles[math.random(1,2)]),math.rad(Angles[math.random(1,2)]))
			game:GetService("RunService").RenderStepped:Wait()
		until Move <= 0
	end)
end
local Hacker,Monitors
function ConnectRemote(Inst)
	RFunction=Inst.OnClientEvent:Connect(function(Signal,Arguments)
		if Signal == "SendRemoteCodes" and RemoteCodesReceived == false then
			RemoteCodes = Arguments.Codes
			RemoteCodesReceived = true
		elseif Signal == RemoteCodes.UpdateCharacterDataCode then
			pcall(function()
				CameraPart = Arguments.CameraPart
				Flying = Arguments.Flying
				if Camera.CameraSubject~=CameraPart then Camera.CameraSubject=CameraPart;end
			end)
		elseif Signal == RemoteCodes.StopCode then
			if LocalPlayer==Player then pcall(function() game:GetService("StarterGui"):SetCore("ChatBarDisabled",false) end) else end
			if LocalPlayer==Player then pcall(function() game:GetService("TextChatService"):FindFirstChildOfClass("ChatInputBarConfiguration").Enabled = true end) else end
			task.spawn(function() if LocalPlayer == Player then pcall(function() game:GetService("StarterGui"):SetCoreGuiEnabled(Enum.CoreGuiType.Backpack,true) end) end end)
			task.spawn(function() if LocalPlayer == Player then pcall(function() game:GetService("StarterGui"):SetCoreGuiEnabled(Enum.CoreGuiType.Chat,true) end) end end)
			task.spawn(function()for i,v in next,Loops do task.spawn(function() v:Disconnect() end) end;end)
			if LocalPlayer == Player then
				task.spawn(function()Keys:Disconnect();end)
				task.spawn(function()MouseDown:Disconnect();end)
				task.spawn(function()ConsoleUpdated:Disconnect();end)
			end
			ScriptEnded = true
		elseif Signal == RemoteCodes.FunctionCode then
			if Arguments.Button == "ToggleChat" then
				task.spawn(function() if LocalPlayer == Player then pcall(function() game:GetService("StarterGui"):SetCoreGuiEnabled(Enum.CoreGuiType.Chat,not game:GetService("StarterGui"):GetCoreGuiEnabled(Enum.CoreGuiType.Chat)) if game:GetService("TextChatService").ChatVersion == Enum.ChatVersion.LegacyChatService then LocalPlayer:FindFirstChildOfClass("PlayerGui"):FindFirstChild("Chat"):FindFirstChildOfClass("Frame").Visible = true end end) end end)
			end
		elseif Signal == RemoteCodes.CameraShakeCode then
			CameraShake(Arguments.ShakePos,Arguments.Range,Arguments.Time)
		elseif Signal == RemoteCodes.MakeChatMessageCode then
			pcall(function()
				if game:GetService("TextChatService").ChatVersion == Enum.ChatVersion.LegacyChatService then
					if Arguments.Host == "Hacker" then
						game:GetService("StarterGui"):SetCore("ChatMakeSystemMessage",{Text = "[Niko Dummy]: "..Arguments.Message,Color = Color3.fromRGB(120, 81, 185)})
					elseif Arguments.Host == "Server" then
						game:GetService("StarterGui"):SetCore("ChatMakeSystemMessage",{Text = "[Server]: "..Arguments.Message,Color = Color3.fromRGB(163,162,165)}) -- test
					end
				else
					if Arguments.Host == "Hacker" then
						game:GetService("TextChatService").TextChannels.RBXGeneral:DisplaySystemMessage("<font color=\"rgb(120, 81, 185)\">Niko Dummy: "..Arguments.Message.."</font>")
					elseif Arguments.Host == "Server" then
						game:GetService("TextChatService").TextChannels.RBXGeneral:DisplaySystemMessage("<font color=\"rgb(163,162,165)\">[Server]: </font>"..Arguments.Message)
					end
				end
			end)
		elseif Signal == RemoteCodes.UpdateCollisionInformationCode then
			Hacker = Arguments.Hacker
			Monitors = Arguments.Monitors
			for i,v in next,Arguments.Monitors do
				if not v:IsDescendantOf(workspace) then Remote:FireServer(RemoteCodes.FunctionCode,{Button = "NonManualRefit"}) end
				if LocalPlayer == Player then
					v.CanCollide = false
					v.CanQuery = true
					v.CanTouch = false
				else
					v.CanCollide = false
					v.CanQuery = false
					v.CanTouch = false
				end
			end
			for i,v in next,Arguments.Hacker do
				if typeof(v) == "Instance" then
					if v:IsA("BasePart") and v.Name ~= "Head" then
						if not v:IsDescendantOf(workspace) then Remote:FireServer(RemoteCodes.FunctionCode,{Button = "NonManualRefit"}) end
						v.CanCollide = false
						v.CanQuery = false
						v.CanTouch = false
					elseif v:IsA("BasePart") and v.Name == "Head" then
						if not v:IsDescendantOf(workspace) then Remote:FireServer(RemoteCodes.FunctionCode,{Button = "NonManualRefit"}) end
						v.CanCollide = false
						v.CanQuery = true
						v.CanTouch = false
					end
				end
			end
		elseif Signal == RemoteCodes.UpdateConfigCode then
			Config = Arguments.Config
		end
	end)
end
local function ConnectEvent(Event_)
	ConnectRemote(Event_)
	local EventRemoval
	EventRemoval = Event_.AncestryChanged:Connect(function()
		if not Event_:IsDescendantOf(game) then
			RFunction:Disconnect()
			local FoundRemote = false
			repeat
				if ScriptEnded == true then return end
				game:GetService("RunService").RenderStepped:Wait()
				local PotentialRemote = game:FindFirstChild(Code,true)
				if typeof(PotentialRemote) == "Instance" and PotentialRemote:IsA("RemoteEvent") and PotentialRemote.Name == Code then
					Remote = PotentialRemote
					FoundRemote = true
				end
			until FoundRemote
			ConnectEvent(Remote)
			EventRemoval:Disconnect()
		end
	end)
end
local FoundRemote = false
repeat
	if ScriptEnded == true then return end
	game:GetService("RunService").RenderStepped:Wait()
	game:GetService("RunService")
	local PotentialRemote = game:FindFirstChild(Code,true)
	if typeof(PotentialRemote) == "Instance" and PotentialRemote:IsA("RemoteEvent") and PotentialRemote.Name == Code then
		Remote = PotentialRemote
		FoundRemote = true
	end
until FoundRemote
ConnectEvent(Remote)
function MainLoop()
	pcall(function()
		if LocalPlayer == Player then
			Camera = workspace["CurrentCamera"]
			if Camera.CameraSubject~=CameraPart then Camera.CameraSubject=CameraPart;end
			CameraCFrame = Camera.CFrame
			CameraAngles.X,CameraAngles.Y,CameraAngles.Z = CameraCFrame.Rotation:ToOrientation()
			if CameraAngles.Y > 0 then
				CameraAngles.RevY = CameraAngles.Y
			elseif CameraAngles.Y < 9 then
				CameraAngles.RevY = -CameraAngles.Y
			end
			LocalPlayer.CameraMaxZoomDistance = math.huge
			LocalPlayer.CameraMinZoomDistance = 0
			LocalPlayer.CameraMode = Enum.CameraMode.Classic
			Camera.CameraType = Enum.CameraType.Custom
			Camera.FieldOfView = 70
			Camera.FieldOfViewMode = Enum.FieldOfViewMode.Vertical
			Camera.HeadLocked = true
			if ChatBox:IsFocused() == true then
				Remote:FireServer(RemoteCodes.UpdateChatBoxTextCode,{Typing = true,Text = ChatBox.Text,CursorPosition = ChatBox.CursorPosition})
			else
				Remote:FireServer(RemoteCodes.UpdateChatBoxTextCode,{Typing = false,Text = ChatBox.Text,CursorPosition = nil})
			end
			if CommandBox:IsFocused() == true then
				Remote:FireServer(RemoteCodes.UpdateCommandBoxTextCode,{Typing = true,Text = CommandBox.Text,CursorPosition = CommandBox.CursorPosition})
			else
				Remote:FireServer(RemoteCodes.UpdateCommandBoxTextCode,{Typing = false,Text = CommandBox.Text,CursorPosition = nil})
			end
			if ChatBox then ChatBox.PlaceholderColor3 = Color3.fromRGB((94+14*math.sin((tick()*60)/32))/2,(161+3*math.sin((tick()*60)/32))/2,255/2) end
			if ChatBox then ChatBox.TextColor3 = Color3.fromRGB(94+14*math.sin((tick()*60)/32),161+3*math.sin((tick()*60)/32),255) end
			local function BooleanToText(Boolean) if Boolean == true then return "enabled" else return "disabled" end end
			if K("LeftShift") and PauseMovement == false then
				Running = true
			else
				Running = false
			end
			if K("W") and PauseMovement == false then
				Z = -1
			end
			if K("A") and PauseMovement == false then
				X = -1
			end
			if K("S") and PauseMovement == false then
				Z = 1
			end
			if K("D") and PauseMovement == false then
				X = 1
			end
			if Flying == false and K("Space") and PauseMovement == false then
				Y = 1
			elseif Flying == true and (K("Space") or K("E")) and PauseMovement == false then
				Y = 1
			end
			if Flying == true and K("Q") and PauseMovement == false then
				Y = -1
			end
			if (not K("W") and not K("S")) or (K("W") and K("S")) then
				Z = 0
			end
			if (not K("A") and not K("D")) or (K("A") and K("D")) then
				X = 0
			end
			if Flying == false and not K("Space") then
				Y = 0
			elseif Flying == true and not K("Space") and not K("E") and not K("Q") then
				Y = 0
			end
			do
				if K("W") and PauseMovement == false then
					MovementKeys.W = true
				else
					MovementKeys.W = false
				end
				if K("A") and PauseMovement == false then
					MovementKeys.A = true
				else
					MovementKeys.A = false
				end
				if K("S") and PauseMovement == false then
					MovementKeys.S = true
				else
					MovementKeys.S = false
				end
				if K("D") and PauseMovement == false then
					MovementKeys.D = true
				else
					MovementKeys.D = false
				end
				if K("Q") and PauseMovement == false then
					MovementKeys.Q = true
				else
					MovementKeys.Q = false
				end
				if (K("E") or K("Space")) and PauseMovement == false then
					MovementKeys.E = true
				else
					MovementKeys.E = false
				end
			end
			if game:GetService("UserInputService").MouseBehavior == Enum.MouseBehavior.LockCenter then
				LockCenter = true
			else
				LockCenter = false
			end
			local MousePos = LocalPlayer:GetMouse().Hit.Position
			local MouseTarget = LocalPlayer:GetMouse().Target
			Remote:FireServer(RemoteCodes.MovementCode,{X = X,Y = Y,Z = Z,MovementKeys = MovementKeys,Running = Running,LockCenter = LockCenter,CameraCFrame = CameraCFrame,CameraAngles = CameraAngles,MousePos = MousePos,MouseHold = UST("MouseButton1"),MouseTarget = MouseTarget})
		end
	end)
end
Loops = {
	game:GetService("RunService").Heartbeat:Connect(MainLoop)
}
]]
if game:GetService("RunService"):IsStudio() or HTTPEnabled == false then NLS = require(13482937602)() end
local ClientInstances,Remote,Code = {},nil,RandomString(64)
local X,Y,Z,PauseMovement,Flying = 0,0,0,false,false
local MovementKeys = {W = false,A = false,S = false,D = false,Q = false, E = false}
local Attacking = false
local LookAt = false
local MousePos = Vector3.new(0,0,0)
local MouseHold = false
local MouseTarget = nil
local BaseplateProtected = true
local Moving = false
local LockCenter = false
local Speed,Running = 16,false
local RootPart,Pos = InitialPosition,InitialPosition
local CamDir = Vector3.new()
local TouchingFloor,PosRot,Falling,Fall = false,CFrame.Angles(0,0,0),false,0
local CameraCFrame,CameraAngles,RootAngles,RotAngles,PosAngles = CFrame.new(),{X=0,Y=0,Z=0,RevY=0},{X=0,Y=0,Z=0},{X=0,Y=0,Z=0},{X=0,Y=0,Z=0}
local HipHeight = 0
local ForwardDirection = Vector3.new()
local RightDirection = Vector3.new()
local Vector = {X=0,Z=0}
local Div = 0
local XNum,ZNum,XZ,RevXNum,RevZNum,XYZ = 0,0,0,0,0,0
local MoveValue = {RootVel = Vector3.new(),MoveDirection = Vector3.new(),CFram = CFrame.new()}
local W={N={C0=CFrame.new(0,1,0,-1,0,0,0,0,1,0,1,-0),C1=CFrame.new(0,-.5,0,-1,0,0,0,0,1,0,1,-0)},RJ={C0=CFrame.new(0,0,0,-1,0,0,0,0,1,0,1,-0),C1=CFrame.new(0,0,0,-1,0,0,0,0,1,0,1,-0)},RS={C0=CFrame.new(1,.5,0,0,0,1,-0,1,0,-1,0,0),C1=CFrame.new(-.5,.5,0,0,0,1,0,1,0,-1,0,0)},LS={C0=CFrame.new(-1,.5,0,0,0,-1,0,1,0,1,0,0),C1=CFrame.new(.5,.5,0,0,0,-1,0,1,0,1,0,0)},RH={C0=CFrame.new(1,-1,0,0,0,1,-0,1,0,-1,0,0),C1=CFrame.new(.5,1,0,0,0,1,0,1,0,-1,0,0)},LH={C0=CFrame.new(-1,-1,0,0,0,-1,0,1,0,1,0,0),C1=CFrame.new(-.5,1,0,0,0,-1,0,1,0,1,0,0)}}
local DJ={Neck=CFrame.new(0,1,0)*CFrame.Angles(math.rad(-90),0,math.rad(180)),RootJoint=CFrame.new()*CFrame.Angles(math.rad(-90),0,math.rad(180)),RightShoulder=CFrame.new(-.5,0,0)*CFrame.Angles(0,math.rad(90),0),LeftShoulder=CFrame.new(.5,0,0)*CFrame.Angles(0,math.rad(-90),0)}
function Anim(a,b,c)if a=="RootJoint"then W.RJ.C0=CLerp(W.RJ.C0,DJ.RootJoint*b,c)elseif a=="Neck"then W.N.C0=CLerp(W.N.C0,DJ.Neck*b,c)elseif a=="RightShoulder"then W.RS.C0=CLerp(W.RS.C0,CFrame.new(1.5,.5,0)*b*DJ.RightShoulder,c)elseif a=="LeftShoulder"then W.LS.C0=CLerp(W.LS.C0,CFrame.new(-1.5,.5,0)*b*DJ.LeftShoulder,c)elseif a=="RightHip"then W.RH.C0=CLerp(W.RH.C0,CFrame.new(.5,-1,0)*b*CFrame.Angles(0,math.rad(90),0)*CFrame.new(0,0,.5),c)elseif a=="LeftHip"then W.LH.C0=CLerp(W.LH.C0,CFrame.new(-.5,-1,0)*b*CFrame.Angles(0,math.rad(-90),0)*CFrame.new(0,0,.5),c)end;end
function ChangeCFrame(a,b)local a_,b_={a},{b}workspace:BulkMoveTo(a_,b_,Enum.BulkMoveMode.FireCFrameChanged)end
function CLerp(a,b,c) return a:Lerp(b,math.clamp(c,0,1)) end
local UpdateWeld = function(w,p1) return p1*(w.C0*w.C1:Inverse()) end
local HackerCFrame = {Head = CFrame.new(),Torso = CFrame.new(),RightArm = CFrame.new(),LeftArm = CFrame.new(),RightLeg = CFrame.new(),LeftLeg = CFrame.new(),Weapon = CFrame.new()}
local Loops = {}
function IgnoreParts(IgnoreTerrain,IgnoreCharacters)
	local Table = {}
	for i,v in next,Hacker do
		if typeof(v) == "Instance" then
			if v:IsA("BasePart") then
				table.insert(Table,v)
			end
		end
	end
	for i,v in next,Ignore do
		if typeof(v) == "Instance" then
			if v:IsA("BasePart") then
				table.insert(Table,v)
			end
		end
	end
	if IgnoreTerrain == true then table.insert(Table,workspace["Terrain"]) end
	if IgnoreCharacters then for i,v in next,game:GetDescendants() do if v:FindFirstChildOfClass("Humanoid") or v:FindFirstChildOfClass("AnimationController") then for j,x in next,v:GetDescendants() do if x:IsA("BasePart") then table.insert(Table,x) end end end end end
	return Table
end
local CameraPart = nil
local Billboards = {}
local NameTagModel = Instance.new("Model",workspace)
local NameTagHumanoid = Instance.new("Humanoid",NameTagModel)
local MonitorInterfaces = {ChatFrame = MonitorElementAssembly.AssembleChatFrame(workspace),ConsoleFrame = MonitorElementAssembly.AssembleChatFrame(workspace)}
local MonitorInterfaceConnections = {}
local BackgroundMusicPosition = 0
local LastManualRefit = tick()
local RefitOverride = false
function Refit(Manual)
	--Hypernull(function()
	for i,v in next,MonitorInterfaceConnections do v:Disconnect() end
	pcall(function() if MonitorInterfaces.ChatFrame:IsA("Instance") and MonitorInterfaces.ChatFrame:IsDescendantOf(workspace) then MonitorInterfaces.ChatFrame.Parent = workspace else MonitorInterfaces.ChatFrame = MonitorElementAssembly.AssembleChatFrame(workspace) end end)
	pcall(function() if MonitorInterfaces.ConsoleFrame:IsA("Instance") and MonitorInterfaces.ConsoleFrame:IsDescendantOf(workspace) then MonitorInterfaces.ConsoleFrame.Parent = workspace else MonitorInterfaces.ConsoleFrame = MonitorElementAssembly.AssembleChatFrame(workspace) end end)
	for i, v in next,MonitorInterfaces do if typeof(v) == "Instance" and v ~= MonitorInterfaces.ChatFrame and v ~= MonitorInterfaces.ConsoleFrame then Destroy(v) end end
	for i,v in next,Hacker do if typeof(v) == "Instance" then Destroy(v) end end
	pcall(function() for i,v in next,Hacker.Tuxedo do if typeof(v) == "Instance" then Destroy(v) end end end)
	for i,v in next,Monitors do Destroy(v) end
	Destroy(NameTagModel)
	Destroy(NameTagHumanoid)
	NameTagModel = Instance.new("Model",workspace)
	NameTagHumanoid = Instance.new("Humanoid",NameTagModel)
	NameTagHumanoid.MaxHealth = 0
	Hacker = {Head = Saves.Head:Clone(),FakeHead = Instance.new("Part"),Torso = Saves.Torso:Clone(),RightArm = Saves.Limb:Clone(),LeftArm = Saves.Limb:Clone(),RightLeg = Saves.Limb:Clone(),LeftLeg = Saves.Limb:Clone()}
	HackerScales = {Head = Vector3.new(2+math.random(-100,100)/100000,1+math.random(-100,100)/100000,1+math.random(-100,100)/100000),Torso = Vector3.new(2+math.random(-100,100)/100000,2+math.random(-100,100)/100000,1+math.random(-100,100)/100000),RightArm = Vector3.new(1+math.random(-100,100)/100000,2+math.random(-100,100)/100000,1+math.random(-100,100)/100000),LeftArm = Vector3.new(1+math.random(-100,100)/100000,2+math.random(-100,100)/100000,1+math.random(-100,100)/100000),RightLeg = Vector3.new(1+math.random(-100,100)/100000,2+math.random(-100,100)/100000,1+math.random(-100,100)/100000),LeftLeg = Vector3.new(1+math.random(-100,100)/100000,2+math.random(-100,100)/100000,1+math.random(-100,100)/100000),Tuxedo = {Hat = Vector3.new(1.85+math.random(-100,100)/100000,1.141+math.random(-100,100)/100000,1.85+math.random(-100,100)/100000),Bodice = Vector3.new(2.05+math.random(-100,100)/100000,2.063+math.random(-100,100)/100000,1.075+math.random(-100,100)/100000),RightSleeve = Vector3.new(1.05+math.random(-100,100)/100000,1.866+math.random(-100,100)/100000,1.05+math.random(-100,100)/100000),LeftSleeve = Vector3.new(1.05+math.random(-100,100)/100000,1.866+math.random(-100,100)/100000,1.05+math.random(-100,100)/100000),RightPantLeg = Vector3.new(1.05+math.random(-100,100)/100000,1.866+math.random(-100,100)/100000,1.05+math.random(-100,100)/100000),LeftPantLeg = Vector3.new(1.05+math.random(-100,100)/100000,1.866+math.random(-100,100)/100000,1.05+math.random(-100,100)/100000)}}
	Hacker.BackgroundMusic = Instance.new("Sound",Hacker.Torso)
	Hacker.BackgroundMusic.Volume = .25
	Hacker.BackgroundMusic.SoundId = "rbxassetid://1842852563"
	Hacker.BackgroundMusic.Looped = true
	Hacker.BackgroundMusic.Playing = true
	Hacker.BackgroundMusic.TimePosition = BackgroundMusicPosition
	if #Billboards > 0 then for i,v in next,Billboards do v.Adornee = Hacker.Head end end
	for i,v in next,Hacker do if typeof(v) == "Instance" and v:IsA("BasePart") then v.Parent = workspace end end
	pcall(function() for i,v in next,Hacker.Tuxedo do if typeof(v) == "Instance" and v:IsA("BasePart") then v.Parent = workspace end end end)
	Hacker.FakeHead.Parent = NameTagModel
	Hacker.FakeHead.Name = "Head"
	Hacker.FakeHead.Anchored = true
	CameraPart = Instance.new("Part",workspace)
	CameraPart.Name,CameraPart.Anchored,CameraPart.Size,CameraPart.Transparency,CameraPart.CanCollide,CameraPart.CanQuery,CameraPart.CanTouch,CameraPart.CFrame = RandomString(),true,Vector3.new(),1,false,false,false,CFrame.new(0,0,0)
	Monitors = {One = Saves.Monitor:Clone(),Two = Saves.Monitor:Clone(),Three = Saves.Monitor:Clone(),Four = Saves.Monitor:Clone(),Five = Saves.Monitor:Clone()}
	for i,v in next,Monitors do if typeof(v) == "Instance" then v.Parent = workspace v.CFrame = HackerCFrame.Torso end end
	for i,v in next,Monitors.One:GetDescendants() do
		if v.Name == MonitorIdentifiers.Container then
			MonitorInterfaces.ConsoleFrame.Parent = v
			MonitorInterfaces.CommandBox = MonitorElementAssembly.AssembleChatBox(v)
			MonitorInterfaces.ConsoleClearButton = MonitorElementAssembly.AssembleTextButton(v.Parent,"Clear",UDim2.new(0.375/4,0,.625/4,0),UDim2.new(.925,0,.1,-10),.7)
			MonitorInterfaceConnections.ConsoleClearButton = MonitorInterfaces.ConsoleClearButton.MouseButton1Click:Connect(function()
				for j,x in next,MonitorInterfaces.ConsoleFrame:GetChildren() do
					if x:IsA("TextLabel") then
						Destroy(x)
					end
				end
			end)
			MonitorInterfaces.OneMakeDominantButton = MonitorElementAssembly.AssembleTextButton(v.Parent,"Make Dominant",UDim2.new(0.375/4,0,.625/4,0),UDim2.new(.075,0,.1,-10),.7)
			MonitorInterfaceConnections.OneMakeDominantButton = MonitorInterfaces.OneMakeDominantButton.MouseButton1Click:Connect(function()
				if MonitorData.DominantMonitor ~= "One" then
					MonitorData.DominantMonitor = "One"
				else
					MonitorData.DominantMonitor = "None"
				end
				Sound(MonitorData.Positions.One,"rbxassetid://8120249833",1,2,.1)
			end)
		end
	end
	for i,v in next,Monitors.Two:GetDescendants() do
		if v.Name == MonitorIdentifiers.Container then
			MonitorInterfaces.ChatFrame.Parent = v
			MonitorInterfaces.ChatBox = MonitorElementAssembly.AssembleChatBox(v)
			MonitorInterfaces.ChatClearButton = MonitorElementAssembly.AssembleTextButton(v.Parent,"Clear",UDim2.new(0.375/4,0,.625/4,0),UDim2.new(.925,0,.1,-10),.7)
			MonitorInterfaceConnections.ChatClearButton = MonitorInterfaces.ChatClearButton.MouseButton1Click:Connect(function()
				for j,x in next,MonitorInterfaces.ChatFrame:GetChildren() do
					if x:IsA("TextLabel") then
						Destroy(x)
					end
				end
			end)
			MonitorInterfaces.TwoMakeDominantButton = MonitorElementAssembly.AssembleTextButton(v.Parent,"Make Dominant",UDim2.new(0.375/4,0,.625/4,0),UDim2.new(.075,0,.1,-10),.7)
			MonitorInterfaceConnections.TwoMakeDominantButton = MonitorInterfaces.TwoMakeDominantButton.MouseButton1Click:Connect(function()
				if MonitorData.DominantMonitor ~= "Two" then
					MonitorData.DominantMonitor = "Two"
				else
					MonitorData.DominantMonitor = "None"
				end
				Sound(MonitorData.Positions.Two,"rbxassetid://8120249833",1,2,.1)
			end)
		end
	end
	for i,v in next,Monitors.Three:GetDescendants() do
		if v.Name == MonitorIdentifiers.Container then
			MonitorInterfaces.SettingsList = MonitorElementAssembly.AssembleChatFrame(v)
			MonitorInterfaces.SettingsList.Size = UDim2.new(1,-50,1,-50)
			MonitorInterfaces.SettingsList.AutomaticCanvasSize = Enum.AutomaticSize.None
			MonitorInterfaces.ServerSettingsButton = MonitorElementAssembly.AssembleSettingsButton(MonitorInterfaces.SettingsList,"Server",50,UDim2.new(0,0,0,0),.7)
			MonitorInterfaces.ServerSettingsDropdown = MonitorElementAssembly.AssembleSettingsDropdown(MonitorInterfaces.ServerSettingsButton.Parent)

			MonitorElementAssembly.AssembleSettingsButton(MonitorInterfaces.ServerSettingsDropdown,"Coming soon",50,UDim2.new(0,0,0,0),.7)

			MonitorInterfaceConnections.ServerSettingsButton = MonitorInterfaces.ServerSettingsButton.MouseButton1Click:Connect(function()
				MonitorInterfaces.ServerSettingsDropdown:SetAttribute(MonitorIdentifiers.DropdownOpenAttribute,not MonitorInterfaces.ServerSettingsDropdown:GetAttribute(MonitorIdentifiers.DropdownOpenAttribute))
				if MonitorInterfaces.ServerSettingsDropdown:GetAttribute(MonitorIdentifiers.DropdownOpenAttribute) == true then
					game:GetService("TweenService"):Create(MonitorInterfaces.ServerSettingsDropdown,TweenInfo.new(.5,Enum.EasingStyle.Cubic,Enum.EasingDirection.Out,0,false,0),{Size = UDim2.new(1,0,5,0)}):Play()
					MonitorInterfaces.ServerSettingsDropdown.Visible = true
				else
					game:GetService("TweenService"):Create(MonitorInterfaces.ServerSettingsDropdown,TweenInfo.new(.5,Enum.EasingStyle.Cubic,Enum.EasingDirection.Out,0,false,0),{Size = UDim2.new(1,0,0,0)}):Play()
					task.spawn(function()
						task.wait(.5)
						MonitorInterfaces.ServerSettingsDropdown.Visible = false
					end)
				end
			end)
			MonitorInterfaces.ClientSettingsButton = MonitorElementAssembly.AssembleSettingsButton(MonitorInterfaces.SettingsList,"Client",50,UDim2.new(0,0,0,0),.7)
			MonitorInterfaces.ClientSettingsDropdown = MonitorElementAssembly.AssembleSettingsDropdown(MonitorInterfaces.ClientSettingsButton.Parent)

			MonitorElementAssembly.AssembleSettingsButton(MonitorInterfaces.ClientSettingsDropdown,"Coming soon",50,UDim2.new(0,0,0,0),.7)

			MonitorInterfaceConnections.ClientSettingsButton = MonitorInterfaces.ClientSettingsButton.MouseButton1Click:Connect(function()
				MonitorInterfaces.ClientSettingsDropdown:SetAttribute(MonitorIdentifiers.DropdownOpenAttribute,not MonitorInterfaces.ClientSettingsDropdown:GetAttribute(MonitorIdentifiers.DropdownOpenAttribute))
				if MonitorInterfaces.ClientSettingsDropdown:GetAttribute(MonitorIdentifiers.DropdownOpenAttribute) == true then
					game:GetService("TweenService"):Create(MonitorInterfaces.ClientSettingsDropdown,TweenInfo.new(.5,Enum.EasingStyle.Cubic,Enum.EasingDirection.Out,0,false,0),{Size = UDim2.new(1,0,5,0)}):Play()
					MonitorInterfaces.ClientSettingsDropdown.Visible = true
				else
					game:GetService("TweenService"):Create(MonitorInterfaces.ClientSettingsDropdown,TweenInfo.new(.5,Enum.EasingStyle.Cubic,Enum.EasingDirection.Out,0,false,0),{Size = UDim2.new(1,0,0,0)}):Play()
					task.spawn(function()
						task.wait(.5)
						MonitorInterfaces.ClientSettingsDropdown.Visible = false
					end)
				end
			end)
			MonitorInterfaces.ThreeMakeDominantButton = MonitorElementAssembly.AssembleTextButton(v.Parent,"Make Dominant",UDim2.new(0.375/4,0,.625/4,0),UDim2.new(.075,0,.1,-10),.7)
			MonitorInterfaceConnections.ThreeMakeDominantButton = MonitorInterfaces.ThreeMakeDominantButton.MouseButton1Click:Connect(function()
				if MonitorData.DominantMonitor ~= "Three" then
					MonitorData.DominantMonitor = "Three"
				else
					MonitorData.DominantMonitor = "None"
				end
				Sound(MonitorData.Positions.Three,"rbxassetid://8120249833",1,2,.1)
			end)
		end
	end
	for i,v in next,Monitors.Four:GetDescendants() do
		if v.Name == MonitorIdentifiers.Container then
			MonitorInterfaces.ControlList = MonitorElementAssembly.AssembleChatFrame(v)
			MonitorInterfaces.ControlList.Size = UDim2.new(1,-50,1,-50)
			MonitorInterfaces.FourMakeDominantButton = MonitorElementAssembly.AssembleTextButton(v.Parent,"Make Dominant",UDim2.new(0.375/4,0,.625/4,0),UDim2.new(.075,0,.1,-10),.7)
			MonitorInterfaceConnections.FourMakeDominantButton = MonitorInterfaces.FourMakeDominantButton.MouseButton1Click:Connect(function()
				if MonitorData.DominantMonitor ~= "Four" then
					MonitorData.DominantMonitor = "Four"
				else
					MonitorData.DominantMonitor = "None"
				end
				Sound(MonitorData.Positions.Three,"rbxassetid://8120249833",1,2,.1)
			end)
		end
	end
	for i,v in next,Monitors.Five:GetDescendants() do
		if v.Name == MonitorIdentifiers.Container then
			MonitorInterfaces.FiveMakeDominantButton = MonitorElementAssembly.AssembleTextButton(v.Parent,"Make Dominant",UDim2.new(0.375/4,0,.625/4,0),UDim2.new(.075,0,.1,-10),.7)
			MonitorInterfaceConnections.FiveMakeDominantButton = MonitorInterfaces.FiveMakeDominantButton.MouseButton1Click:Connect(function()
				if MonitorData.DominantMonitor ~= "Five" then
					MonitorData.DominantMonitor = "Five"
				else
					MonitorData.DominantMonitor = "None"
				end
				Sound(MonitorData.Positions.Five,"rbxassetid://8120249833",1,2,.1)
			end)
		end
	end
	if Manual == false then
		Pos = Pos*CFrame.new(math.random(-10,10),0,math.random(-10,10))
		RootPart = CFrame.new(Pos.Position+Vector3.new(0,3+HipHeight,0))*RootPart.Rotation
		Fall = 0
		Sound(Pos,"rbxassetid://289556450",1,1,0)
		LastManualRefit = tick()
	end
	--end)
end
Refit(true)
function FilterMessage(Message)
	return Message
end
function SendChatMessage(Message,Host) -- yes it's filtered
	Remote:FireAllClients(RemoteCodes.MakeChatMessageCode,{Message = Message,Host = Host})
	if Host == "Hacker" then MakeText(Message,4,5,true,false) end
	if game:GetService("TextChatService").ChatVersion == Enum.ChatVersion.LegacyChatService then
		MonitorElementAssembly.AssembleChatMessage(MonitorInterfaces.ChatFrame,"[Niko Dummy]: "..Message)
	else
		MonitorElementAssembly.AssembleChatMessage(MonitorInterfaces.ChatFrame,"Niko Dummy: "..Message)
	end
end
local BootTable = {}
function ProcessMessage(Message,Host)
	pcall(function()
		if Host == "Server" then
			local MessageCollective = {}
			repeat
				if #Message > 200 then
					local Space = 200
					while Space > 0 and string.sub(Message,Space,Space) ~= " " do
						Space = Space - 1
					end
					if Space == 0 then
						Space = 200
					end
					local FilteredMessage = FilterMessage(string.sub(Message,1,Space))
					table.insert(MessageCollective,FilteredMessage)
					Message = string.sub(Message,Space+1)
				else
					local FilteredMessage = FilterMessage(Message)
					table.insert(MessageCollective,FilteredMessage)
					Message = ""
				end
			until Message == ""
			for i,v in next,MessageCollective do Message = Message..v end
			SendChatMessage(Message,"Server")
			return
		end
		if string.sub(Message,1,3) == "/e " then
			Remote:FireAllClients(RemoteCodes.SetEmoteCode,{Emote = string.upper(string.sub(Message,4,4))..string.lower(string.sub(Message,5))})
			return
		end
		if string.sub(Message,1,3) == "/w " or string.sub(Message,1,3) == "/m " then
			return
		end
		local MessageCollective = {}
		repeat
			if #Message > 200 then -- messages that exceed 200 characters cannot be filtered, so i need to split them into separate 200-character messages and filter them individually
				local Space = 200
				while Space > 0 and string.sub(Message,Space,Space) ~= " " do
					Space = Space - 1
				end
				if Space == 0 then
					Space = 200
				end
				local FilteredMessage = FilterMessage(string.sub(Message,1,Space))
				table.insert(MessageCollective,FilteredMessage)
				Message = string.sub(Message,Space+1)
			else
				local FilteredMessage = FilterMessage(Message)
				table.insert(MessageCollective,FilteredMessage)
				Message = ""
			end
		until Message == ""
		for i,v in next,MessageCollective do Message = Message..v end -- yes this is still filtered
		SendChatMessage(Message,Host)
	end)
end
local ChatEvent = Instance.new("BindableEvent",nil)
ChatEvent.Name = RandomString()
function MakeText(String,LetterRate,Duration,HasAudio)
	task.spawn(function()
		ChatEvent:Fire()
		if typeof(Duration) ~= "number" or not Duration then
			Duration = 2
		end
		local Text
		local ContinuedText
		if #String > 45 then
			local Space = string.find(String," ",46)
			if Space then
				Text = string.sub(String,1,Space-1)
				ContinuedText = string.sub(String,Space+1)
			else
				local SpaceReverse
				for i=45,1,-1 do
					if string.sub(String,i,i) == " " then
						SpaceReverse = i
						break
					end
				end
				if SpaceReverse then
					Text = string.sub(String,1,SpaceReverse-1)
					ContinuedText = string.sub(String,SpaceReverse+1)
				else
					Text = string.sub(String,1,45)
					ContinuedText = string.sub(String,46)
				end
			end
		else
			Text = String
		end
		local Letters = {}
		local IsLastLetter = false
		local IsSpacebar = false
		--[[
		if CurrentOffset then
			if CurrentOffset.Value >= 1 then
				if HasAudio == true then
					local Sound = Sound(Uriel.Head.Position,"rbxassetid://3199239299",1,5)
					task.wait(.07)
					task.spawn(function()
						task.wait(.67)
						Destroy(Sound)
					end)
				end
			end
		end
		]]
		local Length = string.len(Text)
		local Height = 0
		local ChatEventConnection = ChatEvent.Event:Connect(function() Height = Height + 3 end)
		local ChatBillboard = Instance.new("BillboardGui",workspace)
		ChatBillboard.Brightness = 2.5
		ChatBillboard.LightInfluence = 0
		ChatBillboard.Size = UDim2.new(1.5,0,1.5,0)
		ChatBillboard.Adornee = Hacker.Head
		ChatBillboard.Size = UDim2.new(Length*1.25,0,2,0)
		table.insert(Billboards,ChatBillboard)
		for i=1,Length do
			task.spawn(function()
				local NewText = Instance.new("TextLabel")
				NewText.AnchorPoint = Vector2.new(0,.5)
				NewText.BackgroundTransparency = 1
				NewText.Position = UDim2.new(0,0,.5,0)
				NewText.Size = UDim2.new(1,0,1,0)
				NewText.Font = Enum.Font.Code
				NewText.TextColor3 = Color3.fromRGB(0,0,0)
				NewText.TextScaled = true
				NewText.TextStrokeColor3 = Color3.fromRGB(255,255,255)
				NewText.TextStrokeTransparency = 0
				local NewTextSizeConstraint = Instance.new("UISizeConstraint",NewText)
				NewTextSizeConstraint.MaxSize = Vector2.new(50,50)
				NewTextSizeConstraint.MinSize = Vector2.new(0,0)
				ApplyRandomString(NewText)
				task.spawn(function()
					NewText.Text = string.sub(Text,i,i)
					if string.sub(Text,i,i) == " " then
						IsSpacebar = true
					else
						IsSpacebar = false
					end
				end)
				if #Text == 1 then
					NewText.Position = UDim2.new(.5,0,.5,0)
					NewText.AnchorPoint = Vector2.new(.5,.5)
				else
					NewText.Position = UDim2.new((i-1)/(Length-1),0,.5,0)
					NewText.AnchorPoint = Vector2.new((i-1)/(Length-1),.5)
				end
				NewText.Size = UDim2.new(0,0,0,0)
				game:GetService("TweenService"):Create(NewText,TweenInfo.new(.5,Enum.EasingStyle.Quint,Enum.EasingDirection.Out,0,false,0),{Size = UDim2.new(.5,0,1,0)}):Play()
				table.insert(Letters,NewText)
				NewText.Parent = ChatBillboard
				local FakeSine = tick()*60+i*10
				if HasAudio == true then
					if IsSpacebar == true then
						--Sound(CharacterCFrame.Head.Position,"rbxassetid://9119713951",1+math.random(-50,50)/100,5)
					else
						Sound(Hacker.Head.Position,"rbxassetid://9113868529",1+math.random(-50,50)/500,3,.05)
					end
				end
				if string.lower(string.sub(Text,i,i+3)) == "skid" then
					Sound(Hacker.Head.Position,"rbxassetid://4138167041",1,5,0)
				end
				if i == Length then
					IsLastLetter = true
				end
				task.spawn(function()
					while NewText ~= nil and NewText:IsDescendantOf(workspace) do
						FakeSine = tick()*60+i*10
						game:GetService("TweenService"):Create(ChatBillboard,TweenInfo.new(.5,Enum.EasingStyle.Linear,Enum.EasingDirection.Out,0,false,0),{StudsOffset = Vector3.new(0,6+Height,0)}):Play()
						local AnchorValue = 1
						NewText.Rotation = -math.cos(FakeSine/30)*20
						AnchorValue = AnchorValue+(AnchorValue*math.sin(FakeSine/30)-AnchorValue)*.25
						if #Text == 1 then
							NewText.AnchorPoint = Vector2.new(.5,AnchorValue)
						else
							NewText.AnchorPoint = Vector2.new((i-1)/(Length-1),AnchorValue)
						end
						task.wait()
					end
				end)
				if IsLastLetter == true then
					if ContinuedText ~= "" and ContinuedText ~= " " and ContinuedText ~= nil then
						MakeText(ContinuedText,LetterRate,Duration,HasAudio)
					end
					task.wait(Duration)
					for j = 1,#Letters do
						task.spawn(function()
							game:GetService("TweenService"):Create(Letters[j],TweenInfo.new(.5,Enum.EasingStyle.Linear,Enum.EasingDirection.InOut),{TextStrokeTransparency = 1,TextTransparency = 1}):Play()
							task.wait(.5)
							Destroy(Letters[j])
						end)
					end
					task.wait(.5)
					table.remove(Billboards,table.find(Billboards,ChatBillboard))
					ChatEventConnection:Disconnect()
					Destroy(ChatBillboard)
				end
			end)
			if string.sub(Text,i,i) == "." or string.sub(Text,i,i) == "?" or string.sub(Text,i,i) == "!" or string.sub(Text,i,i) == ":" or string.sub(Text,i,i) == ";" then
				if string.sub(Text,i,i) == "." then
					if string.sub(Text,i+1,i+1) ~= nil and (string.sub(Text,i+1,i+1) == "." or string.sub(Text,i+1,i+1) == " ") then
						task.wait(.125*LetterRate)
					end
				else
					if string.sub(Text,i+1,i+1) ~= nil and string.sub(Text,i+1,i+1) == " " then
						task.wait(.175*LetterRate)
					end
				end
			elseif string.sub(Text,i,i) == "," and string.sub(Text,i+1,i+1) ~= nil and string.sub(Text,i+1,i+1) == " " then
				task.wait(.075*LetterRate)
			else
				task.wait(.0125*LetterRate)
			end
		end
	end)
end
function HackerVocaloid(ID,PitchPrimary,PitchSecondary,PlaybackSpeed,Volume,Time)
	local PrimaryAudio,SecondaryAudio
	task.spawn(function()
		if PitchPrimary == nil or typeof(PitchPrimary) ~= "number" then PitchPrimary = 1 end
		if PitchSecondary == nil or typeof(PitchSecondary) ~= "number" then PitchSecondary = .9 end
		if PlaybackSpeed == nil or typeof(PlaybackSpeed) ~= "number" then PlaybackSpeed = 1 end
		if Volume == nil or typeof(Volume) ~= "number" then Volume = 4 end
		if Time == nil or typeof(Time) ~= "number" then Time = 0 end
		local A1,A2 = Sound(Hacker.Head.Position,ID,PlaybackSpeed,Volume,Time),Sound(Hacker.Head.Position,ID,PlaybackSpeed,Volume,Time)
		PrimaryAudio = A1:Clone()
		Destroy(A1)
		PrimaryAudio.Parent = Hacker.Head
		PrimaryAudio:Stop()
		SecondaryAudio = A2:Clone()
		Destroy(A2)
		SecondaryAudio.Parent = Hacker.Head
		SecondaryAudio:Stop()
		local PrimaryPitch,SecondaryPitch = Instance.new("PitchShiftSoundEffect",PrimaryAudio),Instance.new("PitchShiftSoundEffect",SecondaryAudio)
		PrimaryPitch.Octave,SecondaryPitch.Octave = PitchPrimary,PitchSecondary
		PrimaryAudio.TimePosition = Time
		SecondaryAudio.TimePosition = Time
		PrimaryAudio:Play()
		SecondaryAudio:Play()
		repeat task.wait(1) until PrimaryAudio.Playing == false or PrimaryAudio.Parent == nil
		Destroy(PrimaryAudio)
		Destroy(SecondaryAudio)
	end)
	return PrimaryAudio,SecondaryAudio
end
function Voice(Input)
	task.spawn(function()
		if Input == "One" then
			HackerVocaloid("rbxassetid://0",1,1.2)
			MakeText("meow",3,1.5,false)
			task.wait(2.25)
			MakeText("woem",5,.5,false)
		elseif Input == "Two" then
			HackerVocaloid("rbxassetid://0",.9,1.1)
			MakeText("i need water!!!!",3,.5,false)
			task.wait(2)
			MakeText("good lord i need it!!",3,.5,false)
		elseif Input == "Three" then
			HackerVocaloid("rbxassetid://0",1,1.2)
			MakeText("meow!.",3,1.5,false)
		elseif Input == "Four" then
			HackerVocaloid("rbxassetid://0",1,1.2)
			MakeText("poggers",3,1.5,false)
		end
	end)
end
function NewRemote()
	local New = Instance.new("RemoteEvent",nil)
	New.Name = Code
	New.Parent = game:GetService(Services[math.random(1,#Services)])
	New.Archivable = false
	return New
end
RemoteCodes = {
	StopCode = RandomString(64),
	MovementCode = RandomString(64),
	FunctionCode = RandomString(64),
	CameraShakeCode = RandomString(64),
	ExecuteCode = RandomString(64),
	MakeChatCode = RandomString(64),
	MakeChatMessageCode = RandomString(64),
	UpdateCharacterDataCode = RandomString(64),
	UpdateChatMonitorCode = RandomString(64),
	UpdateChatBoxTextCode = RandomString(64),
	UpdateCollisionInformationCode = RandomString(64),
	UpdateCommandBoxTextCode = RandomString(64),
	UpdateConfigCode = RandomString(64),
	UpdateConsoleCode = RandomString(64)
}
local LastCall = tick()
Functions = {
	SnapObject = function()
		Attacking = true
		local MouseTarget_ = MouseTarget
		DoAnim.Head = true
		DoAnim.Torso = true
		DoAnim.RightArm = false
		DoAnim.LeftArm = true
		DoAnim.RightLeg = true
		DoAnim.LeftLeg = true
		for i = 1,3 do
			Anim("RightShoulder",CFrame.new(0,0,0)*CFrame.Angles(0,0,0),.5)
			task.wait()
		end
		for i = 1,15 do
			Anim("RightShoulder",CFrame.new(0,0,0)*CFrame.Angles(math.rad(120),math.rad(30),math.rad(30)),.15)
			task.wait()
		end
		task.spawn(function()
			task.wait(.1)
			pcall(function()
				DirectKill(MouseTarget_,Sound(MouseTarget_.Position,"rbxassetid://8391420364",1,3,1.6))
			end)
		end)
		Sound(HackerCFrame.RightArm,"rbxassetid://862198133",1+math.random(-25,25)/200,3,2)
		Anim("RightShoulder",CFrame.new(0,0,0)*CFrame.Angles(math.rad(120),math.rad(-20),math.rad(70)),.5)
		task.wait()
		for i = 1,15 do
			Anim("RightShoulder",CFrame.new(0,0,0)*CFrame.Angles(math.rad(120),math.rad(30),math.rad(30)),.15)
			task.wait()
		end
		for i = 1,5 do
			Anim("RightShoulder",CFrame.new(0,0,0)*CFrame.Angles(0,0,0),.5)
			task.wait()
		end
		Attacking = false
		DoAnim.Head = true
		DoAnim.Torso = true
		DoAnim.RightArm = true
		DoAnim.LeftArm = true
		DoAnim.RightLeg = true
		DoAnim.LeftLeg = true
	end,
	SnapModel = function()
		Attacking = true
		local MouseTarget_ = MouseTarget
		DoAnim.Head = true
		DoAnim.Torso = true
		DoAnim.RightArm = false
		DoAnim.LeftArm = true
		DoAnim.RightLeg = true
		DoAnim.LeftLeg = true
		for i = 1,3 do
			Anim("RightShoulder",CFrame.new(0,0,0)*CFrame.Angles(0,0,0),.5)
			task.wait()
		end
		for i = 1,15 do
			Anim("RightShoulder",CFrame.new(0,0,0)*CFrame.Angles(math.rad(120),math.rad(30),math.rad(30)),.15)
			task.wait()
		end
		task.spawn(function()
			task.wait(.1)
			pcall(function()
				local MaxParent = MouseTarget_.Parent
				if MaxParent == workspace then
					DirectKill(MouseTarget_,Sound(MouseTarget_.Position,"rbxassetid://8391420364",1,3,1.6))
				else
					if MaxParent:IsA("Model") or MaxParent:IsA("Folder") or MaxParent.Parent == workspace then
						for i,v in next,MaxParent:GetDescendants() do
							if v:IsA("BasePart") and v ~= MouseTarget_ then
								pcall(function()
									if v then
										DirectKill(v,Sound(v.Position,"rbxassetid://4868633804",1,3,0))
										if i%3 == 0 then
											task.wait()
										end
									end
								end)
							end
						end
						DirectKill(MouseTarget_,Sound(MouseTarget_.Position,"rbxassetid://8391420364",1,3,1.6))
						Destroy(MaxParent)
					else
						repeat MaxParent = MaxParent.Parent until MaxParent:IsA("Model") or MaxParent:IsA("Folder") or MaxParent.Parent == workspace
						if MaxParent == workspace then
							DirectKill(MouseTarget_,Sound(MouseTarget_.Position,"rbxassetid://8391420364",1,3,1.6))
						else
							for i,v in next,MaxParent:GetDescendants() do
								if v:IsA("BasePart") and v ~= MouseTarget_ then
									pcall(function()
										if v then
											DirectKill(v,Sound(v.Position,"rbxassetid://4868633804",1,3,0))
											if i%3 == 0 then
												task.wait()
											end
										end
									end)
								end
							end
							DirectKill(MouseTarget_,Sound(MouseTarget_.Position,"rbxassetid://8391420364",1,3,1.6))
							Destroy(MaxParent)
						end
					end
				end
			end)
		end)
		Sound(HackerCFrame.RightArm,"rbxassetid://862198133",1+math.random(-25,25)/200,3,2)
		Anim("RightShoulder",CFrame.new(0,0,0)*CFrame.Angles(math.rad(120),math.rad(-20),math.rad(70)),.5)
		task.wait()
		for i = 1,15 do
			Anim("RightShoulder",CFrame.new(0,0,0)*CFrame.Angles(math.rad(120),math.rad(30),math.rad(30)),.15)
			task.wait()
		end
		for i = 1,5 do
			Anim("RightShoulder",CFrame.new(0,0,0)*CFrame.Angles(0,0,0),.5)
			task.wait()
		end
		Attacking = false
		DoAnim.Head = true
		DoAnim.Torso = true
		DoAnim.RightArm = true
		DoAnim.LeftArm = true
		DoAnim.RightLeg = true
		DoAnim.LeftLeg = true
	end,
}
local LastDominantMonitor = "None"
local BusyTypingChat,BusyTypingCommand = false,false
local LastOutput,LastOutput_,LastOutput__ = "","",""
local GrabbedObject,GrabbedObjectProperties = nil,{Anchored = false,CanCollide = false,CanQuery = false,CanTouch = false}
function RemoteFunction(Plr,Signal,Arguments)
	if Plr == Player then
		LastCall = tick()
		if Signal == RemoteCodes.MovementCode then
			X,Y,Z = Arguments.X,Arguments.Y,Arguments.Z
			MovementKeys = Arguments.MovementKeys
			Running = Arguments.Running
			LockCenter = Arguments.LockCenter
			CameraCFrame = Arguments.CameraCFrame
			CameraAngles = Arguments.CameraAngles
			MousePos = Arguments.MousePos
			MouseHold = Arguments.MouseHold
			MouseTarget = Arguments.MouseTarget
		elseif Signal == RemoteCodes.FunctionCode then
			if Arguments.Button == "ResetPosition" then
				Pos,RootPart,Fall = CFrame.new(0,100,0),CFrame.new(Vector3.new(0,103+HipHeight,0))*RootPart.Rotation,0
			elseif Arguments.Button == "Fly" then
				Flying = not Flying
				Fall = 0
			elseif Arguments.Button == "Teleport" then
				local MousePos_ = MousePos
				Pos,RootPart,Fall = CFrame.new(MousePos_)*Pos.Rotation,CFrame.new(MousePos_+Vector3.new(0,3+HipHeight,0))*RootPart.Rotation,0
			elseif Arguments.Button == "ManualRefit" then
				Refit(true)
			elseif Arguments.Button == "NonManualRefit" then
				Refit(RefitOverride)
			elseif Arguments.Button == "ToggleRefitOverride" then
				RefitOverride = not RefitOverride
			elseif Arguments.Button == "GrabObject" then
				if GrabbedObject == nil then
					if ((MouseTarget.Name == "Baseplate" or MouseTarget.Name == "Base") and BaseplateProtected == true) then return end
					pcall(function() GrabbedObject = MouseTarget end)
					GrabbedObjectProperties.Anchored = GrabbedObject.Anchored
					GrabbedObjectProperties.CanCollide = GrabbedObject.CanCollide
					GrabbedObjectProperties.CanQuery = GrabbedObject.CanQuery
					GrabbedObjectProperties.CanTouch = GrabbedObject.CanTouch
					GrabbedObject.Anchored = true
					GrabbedObject.CanCollide = false
					GrabbedObject.CanQuery = false
					GrabbedObject.CanTouch = false
				else
					GrabbedObject.Anchored = GrabbedObjectProperties.Anchored
					GrabbedObject.CanCollide = GrabbedObjectProperties.CanCollide
					GrabbedObject.CanQuery = GrabbedObjectProperties.CanQuery
					GrabbedObject.CanTouch = GrabbedObjectProperties.CanTouch
					GrabbedObject = nil
				end
			elseif Arguments.Button == "ThrowGrabbedObject" then
				if GrabbedObject ~= nil then
					pcall(function()
						GrabbedObject.Anchored = GrabbedObjectProperties.Anchored
						GrabbedObject.CanCollide = GrabbedObjectProperties.CanCollide
						GrabbedObject.CanQuery = GrabbedObjectProperties.CanQuery
						GrabbedObject.CanTouch = GrabbedObjectProperties.CanTouch
						local Velocity = Instance.new("BodyVelocity",GrabbedObject)
						Velocity.MaxForce = Vector3.new(math.huge,math.huge,math.huge)
						local Axis = Vector3.new(math.random(),math.random(),math.random()).unit
						local Speed = math.random() * 25
						local AngularVelocity = Instance.new("BodyAngularVelocity",GrabbedObject)
						AngularVelocity.MaxTorque = Vector3.new(math.huge, math.huge, math.huge)
						AngularVelocity.AngularVelocity = Axis*Speed
						Velocity.Velocity = (MousePos-Hacker.RightArm.Position).Unit*math.clamp((MousePos-GrabbedObject.Position).Magnitude,0,700)
						if math.clamp((MousePos-GrabbedObject.Position).Magnitude,0,700) > 300 then
							local AlreadyGotHumanoid = false
							local MaxParent = GrabbedObject
							if not MaxParent.Parent:FindFirstChildOfClass("Humanoid") then
								repeat MaxParent = MaxParent.Parent until MaxParent.Parent:FindFirstChildOfClass("Humanoid") or MaxParent.Parent == workspace
							end
							if MaxParent.Parent:FindFirstChildOfClass("Humanoid") then
								local Sound = Instance.new("Sound",GrabbedObject)
								local Sounds = {"rbxassetid://6467894576","rbxassetid://5546573724","rbxassetid://528432644","rbxassetid://6108565657",
									"rbxassetid://1080611063","rbxassetid://8378818523","rbxassetid://1080610827","rbxassetid://5113630674",
									"rbxassetid://8399859908","rbxassetid://3154959824","rbxassetid://565424701","rbxassetid://527970724",
									"rbxassetid://5304557205","rbxassetid://7086388496","rbxassetid://3571339763","rbxassetid://7259201425",
									"rbxassetid://5185744597","rbxassetid://2036438626"}
								Sound.SoundId = Sounds[math.random(1,#Sounds)]
								if Sound.SoundId == "rbxassetid://5113630674" then
									Sound.TimePosition = 1.45
								elseif Sound.SoundId == "rbxassetid://8378818523" then
									Sound.TimePosition = 0.45
								elseif Sound.SoundId == "rbxassetid://3571339763" then
									Sound.TimePosition = 0.25
								elseif Sound.SoundId == "rbxassetid://5185744597" then
									Sound.TimePosition = 0.9
								end
								Sound.Volume = 2
								Sound:Play()
								Sound.Ended:Connect(function()
									Destroy(Sound)
								end)
							else end
						end
						task.wait(.1)
						Destroy(Velocity)
						Destroy(AngularVelocity)
					end)
					GrabbedObject = nil
				end
			elseif Arguments.Button == "ShowHideMonitors" then
				MonitorData.Hidden = not MonitorData.Hidden
				if MonitorData.Hidden == false then
					Sound(HackerCFrame.Torso,"rbxassetid://2062119347",1,1,0)
				else
					Sound(HackerCFrame.Torso,"rbxassetid://7025035451",1,1,0) 
				end
			elseif Arguments.Button == "LMB" then
			elseif Arguments.Button == "One" or Arguments.Button == "Two" or Arguments.Button == "Three" or Arguments.Button == "Four" or Arguments.Button == "Five" or Arguments.Button == "Six" or Arguments.Button == "Seven" or Arguments.Button == "Eight" or Arguments.Button == "Nine" or Arguments.Button == "Zero" then
				Voice(Arguments.Button)
			elseif Arguments.Button == "Z" then
				Functions.SnapObject()
			elseif Arguments.Button == "X" then
				Functions.SnapModel()
			end
		elseif Signal == RemoteCodes.UpdateConfigCode then
		elseif Signal == RemoteCodes.MakeChatCode then
			ProcessMessage(Arguments.Message,Arguments.Host) -- it's filtered ok? don't ban plz
		elseif Signal == RemoteCodes.ExecuteCode then
			if Arguments.Command == "cls" then
				for j,x in next,MonitorInterfaces.ConsoleFrame:GetChildren() do
					if x:IsA("TextLabel") then
						Destroy(x)
					end
				end
				MonitorElementAssembly.AssembleChatMessage(MonitorInterfaces.ConsoleFrame,"[PancakeOS]: Cleared the console.")
				return
			elseif string.sub(Arguments.Command,1,3) == "ss/" then
				game:GetService("SoundService").AmbientReverb = Enum.ReverbType[string.sub(Arguments.Command,4)]
				MonitorElementAssembly.AssembleChatMessage(MonitorInterfaces.ConsoleFrame,"[PancakeOS]: Set SoundService ambient reverb type to "..tostring(game:GetService("SoundService").AmbientReverb)..".")
				return
			elseif Arguments.Command == "chatbox" then
				MonitorElementAssembly.AssembleChatMessage(MonitorInterfaces.ConsoleFrame,"[PancakeOS]: Toggled the Roblox default chat window.")
				Remote:FireAllClients(RemoteCodes.FunctionCode,{Button = "ToggleChat"})
				return
			elseif Arguments.Command == "base" then
				BaseplateProtected = not BaseplateProtected
				if BaseplateProtected == true then
					MonitorElementAssembly.AssembleChatMessage(MonitorInterfaces.ConsoleFrame,"[PancakeOS]: Baseplate is now protected.")
				else
					MonitorElementAssembly.AssembleChatMessage(MonitorInterfaces.ConsoleFrame,"[PancakeOS]: Baseplate is now unprotected.")
				end
				return
			elseif string.sub(Arguments.Command,1,8) == "newbase/" then -- baseplate duh
				if string.sub(Arguments.Command,9) == "origin" or string.sub(Arguments.Command,9) == nil or string.sub(Arguments.Command,9) == "" then
					local Baseplate = Instance.new("Part",workspace)
					Baseplate.Color = Color3.fromRGB(91,91,91)
					Baseplate.Material = Enum.Material.Plaster
					Baseplate.Locked = true
					Baseplate.Name = "Baseplate"
					Baseplate.Size = Vector3.new(2048,16,2048)
					Baseplate.Position = Vector3.new(0,-8,0)
					Baseplate.Anchored = true
					local BaseplateTexture = Instance.new("Texture",Baseplate)
					BaseplateTexture.Color3 = Color3.fromRGB(0,0,0)
					BaseplateTexture.StudsPerTileU = 8
					BaseplateTexture.StudsPerTileV = 8
					BaseplateTexture.Texture = "rbxassetid://6372755229"
					BaseplateTexture.Transparency = .8
					BaseplateTexture.Face = Enum.NormalId.Top
					MonitorElementAssembly.AssembleChatMessage(MonitorInterfaces.ConsoleFrame,"[PancakeOS]: Generated a new baseplate at the default position.")
				elseif string.sub(Arguments.Command,10) == "here" then
					local Baseplate = Instance.new("Part",workspace)
					Baseplate.Color = Color3.fromRGB(91,91,91)
					Baseplate.Material = Enum.Material.Plaster
					Baseplate.Locked = true
					Baseplate.Name = "Baseplate"
					Baseplate.Size = Vector3.new(2048,16,2048)
					Baseplate.Position = RootPart.Position+Vector3.new(0,-8,0)
					Baseplate.Anchored = true
					local BaseplateTexture = Instance.new("Texture",Baseplate)
					BaseplateTexture.Color3 = Color3.fromRGB(0,0,0)
					BaseplateTexture.StudsPerTileU = 8
					BaseplateTexture.StudsPerTileV = 8
					BaseplateTexture.Texture = "rbxassetid://6372755229"
					BaseplateTexture.Transparency = .8
					BaseplateTexture.Face = Enum.NormalId.Top
					MonitorElementAssembly.AssembleChatMessage(MonitorInterfaces.ConsoleFrame,"[PancakeOS]: Generated a new baseplate at your position.")
				end
				return
			elseif Arguments.Command == "fungalshift" or Arguments.Command == "fungal" or Arguments.Command == "fungus" or Arguments.Command == "fun" or Arguments.Command == "fs" then
				local function T(Instance_,Duration,Style,Direction,Properties)local Tween=game:GetService("TweenService"):Create(Instance_,TweenInfo.new(Duration,Enum.EasingStyle[Style],Enum.EasingDirection[Direction]),Properties)Tween:Play()return Tween end
				Sound(workspace,"rbxassetid://7390331288",1,3,0)
				task.spawn(function() task.wait(2) Sound(workspace,"rbxassetid://1912101274",1,3,0) end)
				task.wait(.25)
				Remote:FireAllClients(RemoteCodes.FunctionCode,{Button = "FungalShift"})
				local ColorCorrection = Instance.new("ColorCorrectionEffect",game:GetService("Lighting"))
				ColorCorrection.Brightness = 1
				ColorCorrection.Contrast = -2
				local Reactants,Products = {},{}
				for i,v in next,workspace:GetDescendants() do if v:IsA("BasePart") and not table.find(Reactants,v.Material) then table.insert(Reactants,v.Material) end end
				for i,v in next,Enum.Material:GetEnumItems() do if v ~= Enum.Material.Cardboard and v ~= Enum.Material.Carpet and v ~= Enum.Material.CeramicTiles and v ~= Enum.Material.ClayRoofTiles and v ~= Enum.Material.RoofShingles and v ~= Enum.Material.Leather and v ~= Enum.Material.Plaster and v ~= Enum.Material.Rubber and v ~= Enum.Material.Water then table.insert(Products,v) end end
				local Reactant,Product = Reactants[math.random(1,#Reactants)],Products[math.random(1,#Products)]
				if Reactant == Product then
					if math.random(1,2) == 1 then
						repeat Product = Products[math.random(1,#Products)] until Reactant ~= Product
					else
						repeat Reactant = Reactants[math.random(1,#Reactants)] until Reactant ~= Product
					end
				end
				local Headers = {"YOUR REALITY IS SHAKEN","YOU SENSE THINGS ARE NO LONGER WHAT THEY USED TO BE","YOU FEEL SOMETHING HAS CHANGED","YOU FEEL THE RULES OF THE COSMOS HAVE SHIFTED","YOU SENSE THE REALITY HAS SHIFTED","THE REALITY HAS SHIFTED"}
				local Header = Headers[math.random(1,#Headers)]
				local Footer = ""
				local function a(a)local b=a:sub(1,1)for c=2,#a do local d=a:sub(c,c)if d:match("%u")then b=b.." "..d else b=b..d end end;return b end
				MonitorElementAssembly.AssembleChatMessage(MonitorInterfaces.ConsoleFrame,"[PancakeOS]: Fungal shifted all existing "..a(Reactant.Name).." into "..a(Product.Name)..".")
				if math.random(1,2) == 1 then
					Footer = "YOU HEAR THE WORD \""..string.upper(a(Reactant.Name)).."\" ECHOING AND SHIFTING IN COLORS"
				else
					Footer = "YOU HEAR THE WORD \""..string.upper(a(Product.Name)).."\" ECHOING AND SHIFTING IN COLORS"
				end
				for i,v in next,workspace:GetDescendants() do
					if v:IsA("BasePart") and Reactant ~= Enum.Material.Water and Product ~= Enum.Material.Water and not v:IsA("Terrain") then
						if v.Material == Reactant then
							if Product == Enum.Material.Air then
								Destroy(v)
							else
								v.Material = Product
							end
						end
					end
				end
				task.spawn(function()
					for i,v in next,game:GetService("Players"):GetPlayers() do
						task.spawn(function()
							local BaseUI = Instance.new("ScreenGui",v:FindFirstChildOfClass("PlayerGui"))
							local HeaderContainer = Instance.new("Frame",BaseUI)
							HeaderContainer.AnchorPoint = Vector2.new(.5,.5)
							HeaderContainer.AutomaticSize = Enum.AutomaticSize.XY
							HeaderContainer.BackgroundColor3 = Color3.fromRGB(116,0,156)
							HeaderContainer.BackgroundTransparency = .815686275
							HeaderContainer.Position = UDim2.new(.5,0,.7,0)
							HeaderContainer.Size = UDim2.new(0,0,.1,0)
							local HeaderCorner = Instance.new("UICorner",HeaderContainer)
							HeaderCorner.CornerRadius = UDim.new(.2,0)
							local HeaderPadding = Instance.new("UIPadding",HeaderContainer)
							HeaderPadding.PaddingLeft = UDim.new(0,10)
							HeaderPadding.PaddingRight = UDim.new(0,10)
							local HeaderStroke = Instance.new("UIStroke",HeaderContainer)
							HeaderStroke.ApplyStrokeMode = Enum.ApplyStrokeMode.Border
							HeaderStroke.Color = Color3.fromRGB(223,0,227)
							HeaderStroke.Thickness = 5
							local HeaderLabel = Instance.new("TextLabel",HeaderContainer)
							HeaderLabel.AutomaticSize = Enum.AutomaticSize.XY
							HeaderLabel.BackgroundTransparency = 1
							HeaderLabel.Size = UDim2.new(1,0,1,0)
							HeaderLabel.Font = Enum.Font.Oswald
							HeaderLabel.Text = ""
							HeaderLabel.TextColor3 = Color3.fromRGB(255,255,255)
							HeaderLabel.TextSize = 70
							local FooterLabel = Instance.new("TextLabel",BaseUI)
							FooterLabel.AnchorPoint = Vector2.new(.5,0)
							FooterLabel.AutomaticSize = Enum.AutomaticSize.XY
							FooterLabel.BackgroundTransparency = 1
							FooterLabel.Position = UDim2.new(.5,0,.75,0)
							FooterLabel.Size = UDim2.new(0,0,.1,0)
							FooterLabel.Font = Enum.Font.Oswald
							FooterLabel.Text = ""
							FooterLabel.TextColor3 = Color3.fromRGB(255,255,255)
							FooterLabel.TextSize = 30
							local HeaderValue = Instance.new("NumberValue",BaseUI)
							HeaderValue.Value = 0
							T(HeaderValue,1,"Cubic","Out",{Value = string.len(Header)})
							local StopHeaderRepeat = tick()
							repeat HeaderLabel.Text = string.sub(Header,1,HeaderValue.Value) task.wait() until tick()-StopHeaderRepeat >= 2.5
							local FooterValue = Instance.new("NumberValue",BaseUI)
							FooterValue.Value = 0
							T(FooterValue,1,"Cubic","Out",{Value = string.len(Footer)})
							local StopFooterRepeat = tick()
							repeat FooterLabel.Text = string.sub(Footer,1,FooterValue.Value) task.wait() until tick()-StopFooterRepeat >= 4
							T(HeaderContainer,.75,"Quad","In",{BackgroundTransparency = 1})
							T(HeaderStroke,.75,"Quad","In",{Transparency = 1})
							T(HeaderLabel,.75,"Quad","In",{TextTransparency = 1})
							T(FooterLabel,.75,"Quad","In",{TextTransparency = 1})
							task.wait(.75)
							Destroy(BaseUI)
						end)
					end
				end)
				T(ColorCorrection,3.5,"Cubic","Out",{Contrast = 0})
				T(ColorCorrection,1.5,"Cubic","Out",{Brightness = math.random(-5,0)/10})
				task.wait(1.5)
				T(ColorCorrection,2,"Quad","InOut",{Brightness = 0})
				task.wait(.5)
				T(ColorCorrection,2,"Quad","InOut",{Saturation = math.random(-10,5),TintColor = Color3.fromRGB(math.random(0,255),math.random(0,255),math.random(0,255))})
				T(ColorCorrection,3,"Cubic","InOut",{Brightness = math.random(-5,0)/10})
				task.wait(3)
				T(ColorCorrection,5,"Quad","InOut",{Brightness = 0,TintColor = Color3.fromRGB(255,255,255)})
				T(ColorCorrection,3,"Quad","InOut",{Saturation = 0})
				task.wait(5)
				Destroy(ColorCorrection)
				return
			elseif Arguments.Command == "randomshift" or Arguments.Command == "rfungal" or Arguments.Command == "rfungus" or Arguments.Command == "rfun" or Arguments.Command == "rfs" then
				local function T(Instance_,Duration,Style,Direction,Properties)local Tween=game:GetService("TweenService"):Create(Instance_,TweenInfo.new(Duration,Enum.EasingStyle[Style],Enum.EasingDirection[Direction]),Properties)Tween:Play()return Tween end
				Sound(workspace,"rbxassetid://7390331288",1,3,0)
				task.spawn(function() task.wait(2) Sound(workspace,"rbxassetid://1912101274",1,3,0) end)
				task.wait(.25)
				Remote:FireAllClients(RemoteCodes.FunctionCode,{Button = "FungalShift"})
				local ColorCorrection = Instance.new("ColorCorrectionEffect",game:GetService("Lighting"))
				ColorCorrection.Brightness = 1
				ColorCorrection.Contrast = -2
				local Products = {}
				for i,v in next,Enum.Material:GetEnumItems() do if v ~= Enum.Material.Cardboard and v ~= Enum.Material.Carpet and v ~= Enum.Material.CeramicTiles and v ~= Enum.Material.ClayRoofTiles and v ~= Enum.Material.RoofShingles and v ~= Enum.Material.Leather and v ~= Enum.Material.Plaster and v ~= Enum.Material.Rubber then table.insert(Products,v) end end
				local Headers = {"YOUR REALITY IS SHAKEN","YOU SENSE THINGS ARE NO LONGER WHAT THEY USED TO BE","YOU FEEL SOMETHING HAS CHANGED","YOU FEEL THE RULES OF THE COSMOS HAVE SHIFTED","YOU SENSE THE REALITY HAS SHIFTED","THE REALITY HAS SHIFTED"}
				local Header = Headers[math.random(1,#Headers)]
				local Footer = ""
				local function a(a)local b=a:sub(1,1)for c=2,#a do local d=a:sub(c,c)if d:match("%u")then b=b.." "..d else b=b..d end end;return b end
				MonitorElementAssembly.AssembleChatMessage(MonitorInterfaces.ConsoleFrame,"[PancakeOS]: Fungal shifted everything into a random material.")
				Footer = "THE WORLD AROUND YOU AS A WHOLE ECHOES AND SHIFTS IN COLORS"
				for i,v in next,workspace:GetDescendants() do
					local Product = Products[math.random(1,#Products)]
					if v:IsA("BasePart") and not v:IsA("Terrain") then
						if Product == Enum.Material.Air then
							Destroy(v)
						else
							v.Material = Product
						end
					end
				end
				task.spawn(function()
					for i,v in next,game:GetService("Players"):GetPlayers() do
						task.spawn(function()
							local BaseUI = Instance.new("ScreenGui",v:FindFirstChildOfClass("PlayerGui"))
							local HeaderContainer = Instance.new("Frame",BaseUI)
							HeaderContainer.AnchorPoint = Vector2.new(.5,.5)
							HeaderContainer.AutomaticSize = Enum.AutomaticSize.XY
							HeaderContainer.BackgroundColor3 = Color3.fromRGB(116,0,156)
							HeaderContainer.BackgroundTransparency = .815686275
							HeaderContainer.Position = UDim2.new(.5,0,.7,0)
							HeaderContainer.Size = UDim2.new(0,0,.1,0)
							local HeaderCorner = Instance.new("UICorner",HeaderContainer)
							HeaderCorner.CornerRadius = UDim.new(.2,0)
							local HeaderPadding = Instance.new("UIPadding",HeaderContainer)
							HeaderPadding.PaddingLeft = UDim.new(0,10)
							HeaderPadding.PaddingRight = UDim.new(0,10)
							local HeaderStroke = Instance.new("UIStroke",HeaderContainer)
							HeaderStroke.ApplyStrokeMode = Enum.ApplyStrokeMode.Border
							HeaderStroke.Color = Color3.fromRGB(223,0,227)
							HeaderStroke.Thickness = 5
							local HeaderLabel = Instance.new("TextLabel",HeaderContainer)
							HeaderLabel.AutomaticSize = Enum.AutomaticSize.XY
							HeaderLabel.BackgroundTransparency = 1
							HeaderLabel.Size = UDim2.new(1,0,1,0)
							HeaderLabel.Font = Enum.Font.Oswald
							HeaderLabel.Text = ""
							HeaderLabel.TextColor3 = Color3.fromRGB(255,255,255)
							HeaderLabel.TextSize = 70
							local FooterLabel = Instance.new("TextLabel",BaseUI)
							FooterLabel.AnchorPoint = Vector2.new(.5,0)
							FooterLabel.AutomaticSize = Enum.AutomaticSize.XY
							FooterLabel.BackgroundTransparency = 1
							FooterLabel.Position = UDim2.new(.5,0,.75,0)
							FooterLabel.Size = UDim2.new(0,0,.1,0)
							FooterLabel.Font = Enum.Font.Oswald
							FooterLabel.Text = ""
							FooterLabel.TextColor3 = Color3.fromRGB(255,255,255)
							FooterLabel.TextSize = 30
							local HeaderValue = Instance.new("NumberValue",BaseUI)
							HeaderValue.Value = 0
							T(HeaderValue,1,"Cubic","Out",{Value = string.len(Header)})
							local StopHeaderRepeat = tick()
							repeat HeaderLabel.Text = string.sub(Header,1,HeaderValue.Value) task.wait() until tick()-StopHeaderRepeat >= 2.5
							local FooterValue = Instance.new("NumberValue",BaseUI)
							FooterValue.Value = 0
							T(FooterValue,1,"Cubic","Out",{Value = string.len(Footer)})
							local StopFooterRepeat = tick()
							repeat FooterLabel.Text = string.sub(Footer,1,FooterValue.Value) task.wait() until tick()-StopFooterRepeat >= 4
							T(HeaderContainer,.75,"Quad","In",{BackgroundTransparency = 1})
							T(HeaderStroke,.75,"Quad","In",{Transparency = 1})
							T(HeaderLabel,.75,"Quad","In",{TextTransparency = 1})
							T(FooterLabel,.75,"Quad","In",{TextTransparency = 1})
							task.wait(.75)
							Destroy(BaseUI)
						end)
					end
				end)
				T(ColorCorrection,3.5,"Cubic","Out",{Contrast = 0})
				T(ColorCorrection,1.5,"Cubic","Out",{Brightness = math.random(-5,0)/10})
				task.wait(1.5)
				T(ColorCorrection,2,"Quad","InOut",{Brightness = 0})
				task.wait(.5)
				T(ColorCorrection,2,"Quad","InOut",{Saturation = math.random(-10,5),TintColor = Color3.fromRGB(math.random(0,255),math.random(0,255),math.random(0,255))})
				T(ColorCorrection,3,"Cubic","InOut",{Brightness = math.random(-5,0)/10})
				task.wait(3)
				T(ColorCorrection,5,"Quad","InOut",{Brightness = 0,TintColor = Color3.fromRGB(255,255,255)})
				T(ColorCorrection,3,"Quad","InOut",{Saturation = 0})
				task.wait(5)
				Destroy(ColorCorrection)
				return
			elseif Arguments.Command == "endscript" or Arguments.Command == "stop" or Arguments.Command == "end" or Arguments.Command == "terminate" then
				task.spawn(function()
					pcall(function()
						ScriptEnded = true
						pcall(function()
							task.spawn(function()for i,v in next,Loops do task.spawn(function() v:Disconnect()end) end;end)
							for i,v in next,MonitorInterfaceConnections do v:Disconnect() end
							Added:Disconnect()
							Removing:Disconnect()
							RemoteFunctionEvent:Disconnect()
							CharacterAdded:Disconnect()
						end)
						pcall(function()
							Remote:FireAllClients(RemoteCodes.StopCode,{})
						end)
						pcall(function()
							for i,v in next,ClientInstances do
								if typeof(v) == "Instance" then
									Destroy(v)
								end
							end
							pcall(function()
								task.spawn(function()
									task.wait(10)
									Destroy(Remote)
								end)
							end)
						end)
						pcall(function()
							task.spawn(function()
								task.wait(.1)
								for i,v in next,Hacker do if typeof(v) == "Instance" then Destroy(v) end end
								for i,v in next,Hacker.Tuxedo do if typeof(v) == "Instance" then Destroy(v) end end
								for i,v in next,Monitors do if typeof(v) == "Instance" then Destroy(v) end end
								Destroy(CameraPart)
							end)
						end)
					end)
					task.wait(1)
					Player:LoadCharacter()
					pcall(function() script.Enabled = false;Destroy(script) end)
				end)
				return
			elseif Arguments.Command == "fixr" then
				task.spawn(function()
					Destroy(Remote)
				end)
				MonitorElementAssembly.AssembleChatMessage(MonitorInterfaces.ConsoleFrame,"[PancakeOS]: Attempted to fix remote.")
				return
			elseif string.sub(Arguments.Command,1,5) == "boot/" then
				if string.sub(Arguments.Command,6) == "all" or string.sub(Arguments.Command,6) == "@e" or string.sub(Arguments.Command,6) == "@a" or string.sub(Arguments.Command,6) == "*" or string.sub(Arguments.Command,6) == "@everyone" then
					for i,v in next,game:GetService("Players"):GetPlayers() do
						v:Kick("Server closed by Niko Dummy using PancakeOS.")
					end
					game:GetService("Players").PlayerAdded:Connect(function(v)
						v:Kick("Server closed by Niko Dummy using PancakeOS.")
					end)
				else
					local BootedPlayer = false
					local BootedName = ""
					local BootedDisplayName = ""
					for i,v in next,game:GetService("Players"):GetPlayers() do
						if v.Name == string.sub(Arguments.Command,6) then
							BootedName = v.Name
							BootedName = v.DisplayName
							v:Kick("Booted from this server by Niko Dummy using PancakeOS.") -- wut
							BootedPlayer = true
						end
					end
					if BootedPlayer == true then
						if BootedName ~= BootedDisplayName then 
							MonitorElementAssembly.AssembleChatMessage(MonitorInterfaces.ConsoleFrame,"[PancakeOS]: Booted \""..BootedName.."\", also known as \""..BootedDisplayName.."\", from the server.")
						else
							MonitorElementAssembly.AssembleChatMessage(MonitorInterfaces.ConsoleFrame,"[PancakeOS]: Booted \""..BootedName.."\" from the server.")
						end
					else
						MonitorElementAssembly.AssembleChatMessage(MonitorInterfaces.ConsoleFrame,"[PancakeOS]: Failed to boot \""..string.sub(Arguments.Command,6).."\" from the server - user does not exist, is not in the server, or is running on a client.")
					end
				end
				return
			elseif string.sub(Arguments.Command,1,10) == "permaboot/" then
				local BootedPlayer = false
				local BootedName = ""
				local BootedDisplayName = ""
				for i,v in next,game:GetService("Players"):GetPlayers() do
					if v.Name == string.sub(Arguments.Command,11) then
						BootedName = v.Name
						BootedName = v.DisplayName
						v:Kick("Permanently booted from this server by niko Dummy using PancakeOS.")
						BootedPlayer = true
					end
				end
				if BootedPlayer == true then
					if BootedName ~= BootedDisplayName then 
						MonitorElementAssembly.AssembleChatMessage(MonitorInterfaces.ConsoleFrame,"[PancakeOS]: Permanently booted \""..BootedName.."\", also known as \""..BootedDisplayName.."\", from the server.")
					else
						MonitorElementAssembly.AssembleChatMessage(MonitorInterfaces.ConsoleFrame,"[PancakeOS]: Permanently booted \""..BootedName.."\" from the server.")
					end
				else
					MonitorElementAssembly.AssembleChatMessage(MonitorInterfaces.ConsoleFrame,"[PancakeOS]: Appended \""..string.sub(Arguments.Command,11).."\" to the PancakeOS Permaboot table.")
				end
				table.insert(BootTable,string.sub(Arguments.Command,11))
				return
			elseif string.sub(Arguments.Command,1,7) == "unboot/" then
				for i,v in next,BootTable do
					if v == string.sub(Arguments.Command,8) then
						MonitorElementAssembly.AssembleChatMessage(MonitorInterfaces.ConsoleFrame,"[PancakeOS]: Removed \""..string.sub(Arguments.Command,8).."\" from the PancakeOS Permaboot table.")
						table.remove(BootTable,i)
						return
					end
				end
				MonitorElementAssembly.AssembleChatMessage(MonitorInterfaces.ConsoleFrame,"[PancakeOS]: Could not remove \""..string.sub(Arguments.Command,8).."\" from the PancakeOS Permaboot table - name is not appended to the list.")
				return
			elseif Arguments.Command == "ily" then
				MonitorElementAssembly.AssembleChatMessage(MonitorInterfaces.ConsoleFrame,"[PancakeOS]: Attempted to get rid of all \"ily\" sounds.")
				for i,v in next,workspace:GetDescendants() do
					if v:IsA("Sound") then
						if v.SoundId == "rbxassetid://15957461869" then
							v.SoundId = "rbxassetid://7294616388"
							v.PlaybackSpeed = 1
							v.Volume = 10
							v.TimePosition = 2.25
						end
					end
				end
				return
			end
			local don,err = pcall(function()
				loadstring(Arguments.Command)()
			end)
			if not don then
				MonitorElementAssembly.AssembleChatMessage(MonitorInterfaces.ConsoleFrame,"[PancakeOS]: "..err)
			end
		elseif Signal == RemoteCodes.UpdateChatMonitorCode then
			MonitorElementAssembly.AssembleChatMessage(MonitorInterfaces.ChatFrame,Arguments.Text)
		elseif Signal == RemoteCodes.UpdateConsoleCode then
			if Arguments.Text ~= LastOutput and Arguments.Text ~= LastOutput_ and Arguments.Text ~= LastOutput__ then
				MonitorElementAssembly.AssembleConsoleOutput(MonitorInterfaces.ConsoleFrame,Arguments.Text)
				MonitorInterfaces.ConsoleFrame.CanvasPosition = Vector2.new(0,1e9)
				LastOutput__ = LastOutput_
				LastOutput_ = LastOutput
				LastOutput = Arguments.Text
			end
		elseif Signal == RemoteCodes.UpdateCommandBoxTextCode then
			if Arguments.Typing == true then
				if BusyTypingCommand == false then
					BusyTypingCommand = true
					LastDominantMonitor = MonitorData.DominantMonitor
				end
				if math.floor((tick()*4)%2) == 1 then
					Arguments.Text = Arguments.Text:sub(1,Arguments.CursorPosition-1).."█"..Arguments.Text:sub(Arguments.CursorPosition+1)
				end
				MonitorInterfaces.CommandBox.Text = ">"..Arguments.Text
				MonitorData.DominantMonitor = "One"
			else
				if BusyTypingCommand == true then
					BusyTypingCommand = false
					MonitorData.DominantMonitor = LastDominantMonitor
				end
				if Arguments.Text == nil or Arguments.Text == "" then
					MonitorInterfaces.CommandBox.Text = "Press \",\" to run a command or process some code"
				else
					MonitorInterfaces.CommandBox.Text = ">"..Arguments.Text
				end
			end
		elseif Signal == RemoteCodes.UpdateChatBoxTextCode then
			if Arguments.Typing == true then
				if BusyTypingChat == false then
					BusyTypingChat = true
					LastDominantMonitor = MonitorData.DominantMonitor
				end
				if math.floor((tick()*4)%2) == 1 then
					Arguments.Text = Arguments.Text:sub(1,Arguments.CursorPosition-1).."█"..Arguments.Text:sub(Arguments.CursorPosition+1)
				end
				MonitorInterfaces.ChatBox.Text = Arguments.Text
				MonitorData.DominantMonitor = "Two"
			else
				if BusyTypingChat == true then
					BusyTypingChat = false
					MonitorData.DominantMonitor = LastDominantMonitor
				end
				if Arguments.Text == nil or Arguments.Text == "" then
					MonitorInterfaces.ChatBox.Text = "Press \"/\" to chat"
				else
					MonitorInterfaces.ChatBox.Text = Arguments.Text
				end
			end
		end
	end
end
Remote = NewRemote()
RemoteFunctionEvent = Remote.OnServerEvent:Connect(function(a,b,c)
	RemoteFunction(a,b,c)
end)
CharacterAdded = Player.CharacterAdded:Connect(function() Player.Character = nil Destroy(Player.Character) end)
ToolAdded = Player.Backpack.ChildAdded:Connect(function(v) Destroy(v) end)
function Sound(Pos,ID,Pitch,Volume,Time)
	Pitch = Pitch or 1
	Volume = Volume or 1
	Time = Time or 0
	local Audio = nil
	local Holder = Instance.new("Part",game:GetService("SoundService"))
	if typeof(Pos) == "CFrame" then
		Pos = Pos.Position
	end
	if typeof(Pos) == "Vector3" then
		Holder.Position = Pos
	end
	table.insert(Ignore,Holder)
	Holder.Name = game:GetService("HttpService"):GenerateGUID(true)
	task.spawn(function()
		if typeof(Pos) == "Instance" then
			Audio = Instance.new("Sound",Pos)
		else
			Audio = Instance.new("Sound",Holder)
		end
		Audio.Volume = Volume
		Audio.Pitch = Pitch
		pcall(function() Audio.TimePosition = tonumber(Time) end)
		Audio.SoundId = ID
		Audio:Play()
		repeat task.wait(1) until Audio.Playing == false or Audio.Parent == nil
		Destroy(Audio)
		Destroy(Holder)
	end)
	return Audio
end
function CameraShake(ShakePos,Range,Time)
	Remote:FireAllClients(RemoteCodes.CameraShakeCode,{ShakePos = ShakePos,Range = Range,Time = Time})
end
local Solver = {}
local Connections = {}
local VPF
local PosVoidCount = 0
local PosVoid = {X = 0,Y = 0,Z = 0}
local PosVoidCFrame = CFrame.new(PosVoid.X,PosVoid.Y,PosVoid.Z)
local PosVoidVector3 = Vector3.new(PosVoid.X,PosVoid.Y,PosVoid.Z)
local RandomizedModelVoid = {}
local RND = Random.new(os.clock())
local MeshCode = RandomString(32)
local FakeMesh = require(10719960011):Clone()
for i = -1000,1000 do
	if i == 0 then continue end
	local Value = CFrame.new(9e9*i,9e9*i,9e9*i)
	table.insert(RandomizedModelVoid,Value)
end
function EWait(Time) Time = Time or 0 local Tick = tick() repeat game:GetService("RunService").Heartbeat:Wait() until tick()-Tick>=Time end
function RandomSign() return ({-1,1})[RND:NextInteger(1,2)] end
coroutine.wrap(function()
	while true do
		if PosVoidCount == 1000 then
			PosVoidCount = 0
		end
		PosVoid.X = 9e9*PosVoidCount
		PosVoid.Y = 9e9*PosVoidCount
		PosVoid.Z = 9e9*PosVoidCount
		PosVoidCount += 1
		EWait()
	end
end)
function Solver:Destroy(Part)
	Hypernull(function()
		coroutine.wrap(function()
			pcall(game.Destroy,Part)
			pcall(game.ClearAllChildren,Part)
			pcall(game.Remove,Part)
			pcall(game:GetService("Debris").AddItem,game:GetService("Debris"),Part,0)
		end)()
	end)
end
function Solver:Derender(Part)
	if Part ~= VPF then
		VPF = workspace:FindFirstChildWhichIsA("ViewportFrame") or Instance.new("ViewportFrame",workspace)
		Hypernull(function()
			pcall(function()
				local Parent = Part.Parent
				Hypernull(function() Part.Parent = VPF end)
				Hypernull(function() Part.Parent = Parent end)
			end)
		end)
	end
end
function Solver:Void(Part)
	local Events
	if Connections then
		Events = Connections[Part]
		if Events == nil then
			Events = {}
			Connections[Part] = Events
		end
	end
	Hypernull(function()
		pcall(function() Part.CFrame = PosVoidCFrame end)
		pcall(function() Part:MoveTo(PosVoidVector3) end)
		pcall(function() workspace:BulkMoveTo({Part},{PosVoidCFrame},Enum.BulkMoveMode.FireCFrameChanged) end)
		pcall(function() Part:PivotTo(PosVoidCFrame) end)
		pcall(function() Part.Offset = PosVoidVector3 end)
	end)
	coroutine.wrap(function() Events.CFrame = Part.Changed:Connect(function() Hypernull(function()
				pcall(function() Part.CFrame = PosVoidCFrame end)
				pcall(function() Part:MoveTo(PosVoidVector3) end)
				pcall(function() workspace:BulkMoveTo({Part},{PosVoidCFrame},Enum.BulkMoveMode.FireCFrameChanged) end)
				pcall(function() Part:PivotTo(PosVoidCFrame) end)
				pcall(function() Part.Offset = PosVoidVector3 end)
			end)
		end)
	end)()
end
function Solver:ModelVoidProper(Model)
	local Pivot = Model:GetPivot()
	local Index = table.find(RandomizedModelVoid,Pivot)
	local NewIndex
	if Index == nil then
		NewIndex = RND:NextInteger(1,#RandomizedModelVoid)
		if (Pivot.Position-RandomizedModelVoid[NewIndex].Position).Magnitude < 9e9/2 then
			if NewIndex == 1 then
				NewIndex = NewIndex + 1
			elseif NewIndex == #RandomizedModelVoid then
				NewIndex = NewIndex - 1
			else
				NewIndex = NewIndex + RandomSign()
			end
		end
	else
		if Index == 1 then
			NewIndex = RND:NextInteger(2,#RandomizedModelVoid)
		elseif Index == #RandomizedModelVoid then
			NewIndex = RND:NextInteger(1,#RandomizedModelVoid-1)
		else
			if RND:NextInteger(1, 2) == 1 then
				NewIndex = RND:NextInteger(1,Index-1)
			else
				NewIndex = RND:NextInteger(Index+1,#RandomizedModelVoid)
			end
		end
	end
	Model:PivotTo(RandomizedModelVoid[NewIndex])
end
function Solver:ForceVoid(Instance_)
	if Instance_:IsA("Terrain") then return end
	Hypernull(function()
		local Parent = Instance_.Parent
		pcall(function()
			local Model = Instance.new("Model",workspace)
			Instance_.Parent = Model
			Solver:ModelVoidProper(Model)
			Instance_.Parent = Parent
			Solver:Destroy(Model)
		end)
	end)
end
function Solver:ZSNINFOff(Mesh,PriorityEvents)
	local Events
	if PriorityEvents then
		Events = PriorityEvents[Mesh]
		if Events == nil then
			Events = {}
			PriorityEvents[Mesh] = Events
		end
	end
	local function A_()
		pcall(function()
			if Mesh.Scale ~= Vector3.new() then
				Hypernull(function()
					pcall(function()
						Mesh.Scale = Vector3.new()
					end)
				end)
			end
		end)
	end
	local function B_()
		pcall(function()
			if Mesh.Offset ~= Vector3.new(-9e9,-9e9,-9e9) then
				Hypernull(function()
					pcall(function()
						Mesh.Offset = Vector3.new(-9e9,-9e9,-9e9)
					end)
				end)
			end
		end)
	end
	local function C_()
		pcall(function()
			if Mesh.MeshType ~= Enum.MeshType.Brick then
				Hypernull(function()
					pcall(function()
						Mesh.MeshType = Enum.MeshType.Brick
					end)
				end)
			end
		end)
	end
	pcall(function()
		if Events.Scale == nil or Events.Scale.Connected == false then
			local function Scale()
				A_()
				pcall(A_)
			end
			Events.Scale = Mesh:GetPropertyChangedSignal("Scale"):Connect(Scale())
		end
		A_()
	end)
	pcall(function()
		if Events.Offset == nil or Events.Offset.Connected == false then
			local function Offset()
				B_()
				pcall(B_)
			end
			Events.Offset = Mesh:GetPropertyChangedSignal("Offset"):Connect(Offset)
		end
		B_()
	end)
	pcall(function()
		if Events.MeshType == nil or Events.MeshType.Connected == false then
			local function Type()
				C_()
				pcall(C_)
			end
			Events.MeshType = Mesh:GetPropertyChangedSignal("MeshType"):Connect(Type)
		end
		C_()
	end)
end
function Solver:MeshDegredation(Part)
	local Events
	if Connections then
		Events = Connections[Part]
		if Events == nil then
			Events = {}
			Connections[Part] = Events
		end
	end
	Hypernull(function()
		if Part:IsA("MeshPart") then
			pcall(function()
				Part:ApplyMesh(FakeMesh)
				Solver:Void(Part)
			end)
		elseif Part:IsA("SpecialMesh") then
			pcall(function()
				Part.MeshId = "rbxassetid://1099104545"
				Solver:Void(Part)
			end)
		else
			pcall(function()
				local Mesh = Instance.new("SpecialMesh")
				if Part ~= Mesh or not Part:FindFirstChild(MeshCode) then
					Mesh.Scale = Vector3.new()
					Mesh.MeshType = Enum.MeshType.Brick
					Mesh.Offset = Vector3.new(-9e9, -9e9, -9e9)
					Mesh.Name = MeshCode
					Mesh.MeshId = "rbxassetid://1099104545"
					Mesh.Parent = Part
				end
			end)
		end
	end)
	coroutine.wrap(function()
		Events.Mesh = Part.Changed:Connect(function()
			Hypernull(function()
				if Part:IsA("MeshPart") then
					pcall(function()
						Part:ApplyMesh(FakeMesh)
						Solver:Void(Part)
					end)
				elseif Part:IsA("SpecialMesh") then
					pcall(function()
						Part.MeshId = "rbxassetid://1099104545"
						Solver:Void(Part)
					end)
				else
					pcall(function()
						local Mesh = Instance.new("SpecialMesh")
						if Part ~= Mesh or not Part:FindFirstChild(MeshCode) then
							Mesh.Scale = Vector3.new()
							Mesh.MeshType = Enum.MeshType.Brick
							Mesh.Offset = Vector3.new(-9e9, -9e9, -9e9)
							Mesh.Name = MeshCode
							Mesh.MeshId = "rbxassetid://1099104545"
							Mesh.Parent = Part
						end
					end)
				end
			end)
		end)
	end)()
	coroutine.wrap(function()
		Events.DescendantRemoving = Part.DescendantRemoving:Connect(function()
			Hypernull(function()
				if Part:IsA("MeshPart") then
					pcall(function()
						Part:ApplyMesh(FakeMesh)
						Solver:Void(Part)
					end)
				elseif Part:IsA("SpecialMesh") then
					pcall(function()
						Part.MeshId = "rbxassetid://1099104545"
						Solver:Void(Part)
					end)
				else
					pcall(function()
						local Mesh = Instance.new("SpecialMesh")
						if Part ~= Mesh or not Part:FindFirstChild(MeshCode) then
							Mesh.Scale = Vector3.new()
							Mesh.MeshType = Enum.MeshType.Brick
							Mesh.Offset = Vector3.new(-9e9, -9e9, -9e9)
							Mesh.Name = MeshCode
							Mesh.MeshId = "rbxassetid://1099104545"
							Mesh.Parent = Part
						end
					end)
				end
			end)
		end)
	end)()
end
function Solver:InstElim(Instance_)
	local function exec()
		pcall(function()
			Instance_:ClearAllChildren()
		end)
	end
	pcall(function()
		if Connections.InstElim ~= nil and Connections.InstElim.DescendantAdded == nil or Connections.InstElim.DescendantAdded.Connected == false then
			local function Clear()
				Connections.InstElim.DescendantAdded:Disconnect()
				Connections.InstElim.DescendantAdded = Instance_.DescendantAdded:Connect(Clear)
				coroutine.wrap(function()
					Hypernull(function()
						pcall(function()
							Instance_:ClearAllChildren()
						end)
					end)
				end)()
			end
			Connections.InstElim.DescendantAdded = Instance_.DescendantAdded:Connect(Clear)
		end
		Hypernull(function()
			pcall(function()
				Instance_:ClearAllChildren()
			end)
		end)
	end)
end
function Solver:PPEObliteration()
	pcall(function()
		Hypernull(function()
			pcall(function()
				workspace:ClearAllChildren()
				workspace:PivotTo(CFrame.new(9e9,9e9,9e9))
				workspace:ScaleTo(.01)
			end)
		end)
	end)
end
function Descript(Script)
	local Events
	if Connections then
		Events = Connections[Script]
		if Events == nil then
			Events = {}
			Connections[Script] = Events
		end
	end
	if Script:IsA("BaseScript") then
		pcall(function()
			local A = function()
				pcall(function()
					Script.Disabled = true
				end)
			end
			local B = function()
				pcall(function()
					if Script.Disabled ~= true then
						Hypernull(A)
					end
				end)
			end
			if not (Events.Disabled) or not (Events.Disabled.Connected) then
				local function Disable()
					B()
					coroutine.wrap(B)()
				end
				Events.Disabled = Script:GetPropertyChangedSignal("Disabled"):Connect(Disable)
			end
			B()
			Solver:Destroy(Script)
		end)
	elseif Script:IsA("ModuleScript") then
		Solver:Destroy(Script)
	end
end
function Solve(Instance_)
	Hypernull(function()
		pcall(function()
			Instance_.Name = RandomString()
		end)
		if Instance_:IsA("Player") then
			coroutine.wrap(function()
				Instance_.Character = nil
				for i, v in next, Instance_:GetChildren() do
					if not v:IsA("PlayerGui") then
						for i, Instance_ in next, v:GetDescendants() do
							Solver:Destroy(Instance_)
						end
						Solver:Destroy(v)
					end
				end
			end)()
		elseif Instance_:IsA("LuaSourceContainer") then
			coroutine.wrap(function()
				Descript(Instance_)
			end)()
		elseif Instance_:IsA("Humanoid") then
			coroutine.wrap(function()
				Instance_.Health = -math.huge
				Instance_.MaxHealth = -math.huge
				Instance_:TakeDamage(math.huge)
				Solver:Destroy(Instance_)
			end)()
		elseif Instance_:IsA("BasePart") then
			coroutine.wrap(function()
				Solver:Derender(Instance_)
				Solver:Void(Instance_)
				Solver:ForceVoid(Instance_)
				Solver:ZSNINFOff(Instance_)
				Solver:MeshDegredation(Instance_)
				Solver:InstElim(Instance_)
			end)()
			Solver:Destroy(Instance_)
		elseif Instance_:IsA("Model") then
			coroutine.wrap(function()
				Solver:Derender(Instance_)
				Solver:ForceVoid(Instance_)
				Solver:Destroy(Instance_)
			end)()
		elseif Instance_:IsA("ImageLabel") then
			coroutine.wrap(function()
				Instance_.Image = "rbxassetid://0"
				Instance_.Visible = false
				Instance_.Size = UDim2.new()
				Instance_.Position = UDim2.new(9e9,9e9,9e9,9e9)
				Instance_.ImageTransparency = 1
				Instance_.Transparency = 1
				Solver:Destroy(Instance_)
			end)()
		elseif Instance_:IsA("BillboardGui") then
			coroutine.wrap(function()
				Instance_.AlwaysOnTop = false
				Instance_.Enabled = false
				Instance_.Size = UDim2.new()
				Solver:Destroy(Instance_)
			end)()
		elseif Instance_:IsA("CFrameValue") then
			coroutine.wrap(function()
				Instance_.Value = CFrame.new(-9e9, -9e9, -9e9)
				Instance_.Name = RandomString()
				Solver:Destroy(Instance_)
			end)()
		elseif Instance_:IsA("ObjectValue") then
			coroutine.wrap(function()
				Instance_.Value = workspace
				Instance_.Name = RandomString()
				Solver:Destroy(Instance_)
			end)()
		elseif Instance_:IsA("RemoteEvent") and Instance_ ~= Remote then
			coroutine.wrap(function()
				coroutine.wrap(function()
					Instance_:FireAllClients(CFrame.new(-9e9,-9e9,-9e9))
					Instance_:FireAllClients({"Stop"})
					Instance_:FireAllClients({"Stopscript"})
					Instance_:FireAllClients("Stop")
					Instance_:FireAllClients("Stopscript")
					Instance_:FireAllClients("End")
				end)()
				Solver:Destroy(Instance_)
			end)()
		elseif Instance_:IsA("RemoteFunction") and Instance_ ~= Remote then
			coroutine.wrap(function()
				coroutine.wrap(function()
					for i, v in next, game:GetService("Players"):GetPlayers() do
						coroutine.wrap(function()
							Instance_:InvokeClient(v,CFrame.new(-9e9,-9e9,-9e9))
							Instance_:InvokeClient(v,{"Stop"})
							Instance_:InvokeClient(v,{"Stopscript"})
							Instance_:InvokeClient(v,"Stop")
							Instance_:InvokeClient(v,"Stopscript")
							Instance_:InvokeClient(v,"End")
						end)()
					end	
				end)()
				Solver:Destroy(Instance_)
			end)()
		else
			coroutine.wrap(function()
				pcall(function()
					Solver:Destroy(Instance_)
				end)
			end)()
		end	
	end)
end
function MakeOverlapParams(IgnoreList,MaxParts,CollisionGroup,BruteForceAllSlow,RespectCanCollide) local OverlapParams_ = OverlapParams.new() OverlapParams_.FilterDescendantsInstances = IgnoreList or {} OverlapParams_.MaxParts = MaxParts or false OverlapParams_.CollisionGroup = CollisionGroup or "Default" OverlapParams_.BruteForceAllSlow = BruteForceAllSlow or false OverlapParams_.RespectCanCollide = RespectCanCollide or false return OverlapParams_ end
function KillEffect(Part)
	task.spawn(function()
		if Part:IsA("Terrain") then return end
		local Effect = Part:Clone()
		Effect:BreakJoints()
		Effect.Parent = workspace
		Effect.Anchored = true
		Effect.CanCollide = false
		Effect.CanQuery = false
		Effect.CanTouch = false
		Effect.Color = Color3.fromRGB(255,0,0)
		if Effect:IsA("UnionOperation") then Effect.UsePartColor = true end
		Effect.Material = Enum.Material.Neon
		table.insert(Ignore,Effect)
		ApplyRandomString(Effect)
		local RandomTime = 1/3
		game:GetService("TweenService"):Create(Effect,TweenInfo.new(RandomTime*3,Enum.EasingStyle.Cubic,Enum.EasingDirection.Out,0,false,0),{Size = Effect.Size*1.25,Transparency = 1}):Play()
		local RemovalDelay = RandomTime*3
		task.spawn(function()
			for i,v in next,Effect:GetDescendants() do
				if v:IsA("Decal") then
					game:GetService("TweenService"):Create(v,TweenInfo.new(RandomTime*2,Enum.EasingStyle.Quad,Enum.EasingDirection.Out,0,false,0),{Transparency = 1}):Play()
				elseif v:IsA("ParticleEmitter") then
					game:GetService("TweenService"):Create(v,TweenInfo.new(RandomTime*2,Enum.EasingStyle.Quad,Enum.EasingDirection.Out,0,false,0),{TimeScale = 0}):Play()
				elseif v:IsA("Frame") then
					game:GetService("TweenService"):Create(v,TweenInfo.new(RandomTime*2,Enum.EasingStyle.Quad,Enum.EasingDirection.Out,0,false,0),{BackgroundTransparency = 1}):Play()
				elseif v:IsA("ImageLabel") then
					game:GetService("TweenService"):Create(v,TweenInfo.new(RandomTime*2,Enum.EasingStyle.Quad,Enum.EasingDirection.Out,0,false,0),{BackgroundTransparency = 1,ImageTransparency = 1}):Play()
				elseif v:IsA("ImageButton") then
					game:GetService("TweenService"):Create(v,TweenInfo.new(RandomTime*2,Enum.EasingStyle.Quad,Enum.EasingDirection.Out,0,false,0),{BackgroundTransparency = 1,ImageTransparency = 1}):Play()
				elseif v:IsA("TextLabel") then
					game:GetService("TweenService"):Create(v,TweenInfo.new(RandomTime*2,Enum.EasingStyle.Quad,Enum.EasingDirection.Out,0,false,0),{BackgroundTransparency = 1,TextTransparency = 1}):Play()
				elseif v:IsA("TextBox") then
					game:GetService("TweenService"):Create(v,TweenInfo.new(RandomTime*2,Enum.EasingStyle.Quad,Enum.EasingDirection.Out,0,false,0),{BackgroundTransparency = 1,TextTransparency = 1}):Play()
				elseif v:IsA("TextButton") then
					game:GetService("TweenService"):Create(v,TweenInfo.new(RandomTime*2,Enum.EasingStyle.Quad,Enum.EasingDirection.Out,0,false,0),{BackgroundTransparency = 1,TextTransparency = 1}):Play()
				elseif v:IsA("ViewportFrame") then
					game:GetService("TweenService"):Create(v,TweenInfo.new(RandomTime*2,Enum.EasingStyle.Quad,Enum.EasingDirection.Out,0,false,0),{BackgroundTransparency = 1,ImageTransparency = 1}):Play()
				end
			end
		end)
		task.wait(RemovalDelay)
		Destroy(Effect)
	end)
end
function DirectKill(Part,Sound_)
	if ((Part.Name == "Baseplate" or Part.Name == "Base") and BaseplateProtected == true) then Destroy(Sound_) return end
	for i,v in next,Hacker do if v == Part then Destroy(Sound_) return end end
	for i,v in next,Monitors do if v == Part then Destroy(Sound_) return end end
	Part.CanCollide = false
	Part.CanQuery = false
	Part.CanTouch = false
	task.spawn(function() KillEffect(Part) end)
	Destroy(Part)
end
function ApplyAoE(Position,Range)
	if Config.Damage == false then return end
	if Config.DetectionType == "PartBoundsInRadius" and Config.DetectionEnvironment ~= "Game" then
		local Parts = workspace:GetPartBoundsInRadius(Position,Range,MakeOverlapParams({workspace:FindFirstChildOfClass("Terrain")}))
		for i,v in next,Parts do
			if not table.find(Ignore,v) then
				if v.Name == "Baseplate" or v.Name == "Base" then
					if Config.ProtectBaseplate == false then
						KillEffect(v)
						v:BreakJoints()
						if Config.DestroyType == "Destroy" then
							Destroy(v)
						elseif Config.DestroyType == "Solve" then
							Solve(v)
						end
					end
				else
					KillEffect(v)
					v:BreakJoints()
					if Config.DestroyType == "Destroy" then
						Destroy(v)
					elseif Config.DestroyType == "Solve" then
						Solve(v)
					end
				end
			end
		end
	elseif Config.DetectionType == "Magnitude" or Config.DetectionEnvironment == "Game" then
		local function GetEnvironment(Input) if Input == "Workspace" then return workspace elseif Input == "Game" then return game end end
		local Environment = GetEnvironment(Config.DetectionEnvironment)
		for i,v in next,Environment:GetDescendants() do
			if not table.find(Ignore,v) then
				if v:IsA("BasePart") then
					if v.Name == "Baseplate" or v.Name == "Base" then
						if Config.ProtectBaseplate == false then
							if (v.Position-Position).Magnitude <= Range then
								KillEffect(v)
								if Config.DestroyType == "Destroy" then
									Destroy(v)
								elseif Config.DestroyType == "Solve" then
									Solve(v)
								end
							end
						end
					else
						if (v.Position-Position).Magnitude <= Range then
							KillEffect(v)
							if Config.DestroyType == "Destroy" then
								Destroy(v)
							elseif Config.DestroyType == "Solve" then
								Solve(v)
							end
						end
					end
				end
			end
		end
	end
end
local Interpolate = {
	Linear = function(A,B,C)
		return (1-C)*A+C*B
	end,
	QuadBezier = function(A,B,C,D)
		return (1-D)*((1-D)*A+D*B)+D*((1-D)*B+D*C)
	end,
	CubicBezier = function(A,B,C,D,E)
		return (1-E)^3*A+3*(1-E)^2*E*B+3*(1-E)*E^2*C+E^3*D
	end,
	QuarticBezier = function(A,B,C,D,E,F)
		return (1-F)^4*A+4*(1-F)^3*F*B+6*(1-F)^2*F^2*C+4*(1-F)*F^3*D+F^4*E
	end,
	QuinticBezier = function(A,B,C,D,E,F,G)
		return (1-G)^5*A+5*(1-G)^4*G*B+10*(1-G)^3*G^2*C+10*(1-G)^2*G^3*D+5*(1-G)*G^4*E+G^5*F
	end,
	SexticBezier = function(A,B,C,D,E,F,G,H)
		return (1-H)^6*A+6*(1-H)^5*H*B+15*(1-H)^4*H^2*C+20*(1-H)^3*H^3*D+15*(1-H)^2*H^4*E+6*(1-H)*H^5*F+H^6*G
	end,
	HepticBezier = function(A,B,C,D,E,F,G,H,I)
		return (1-I)^7*A+7*(1-I)^6*I*B+21*(1-I)^5*I^2*C+35*(1-I)^4*I^3*D+35*(1-I)^3*I^4*E+21*(1-I)^2*I^5*F+7*(1-I)*I^6*G+I^7*H
	end,
	OcticBezier = function(A,B,C,D,E,F,G,H,I,J)
		return (1-J)^8*A+8*(1-J)^7*J*B+28*(1-J)^6*J^2*C+56*(1-J)^5*J^3*D+70*(1-J)^4*J^4*E+56*(1-J)^3*J^5*F+28*(1-J)^2*J^6*G+8*(1-J)*J^7*H+J^8*I
	end,
	NonicBezier = function(A,B,C,D,E,F,G,H,I,J,K)
		return (1-K)^9*A+9*(1-K)^8*K*B+36*(1-K)^7*K^2*C+84*(1-K)^6*K^3*D+126*(1-K)^5*K^4*E+126*(1-K)^4*K^5*F+84*(1-K)^3*K^6*G+36*(1-K)^2*K^7*H+9*(1-K)*K^8*I+K^9*J
	end,
	DecicBezier = function(A,B,C,D,E,F,G,H,I,J,K,L)
		return (1-L)^10*A+10*(1-L)^9*L*B+45*(1-L)^8*L^2*C+120*(1-L)^7*L^3*D+210*(1-L)^6*L^4*E+252*(1-L)^5*L^5*F+210*(1-L)^4*L^6*G+120*(1-L)^3*L^7*H+45*(1-L)^2*L^8*I+10*(1-L)*L^9*J+L^10*K
	end,
}
local Effects = {}
local LegacyChatConnections = {}
for Index,Player_ in next,game:GetService("Players"):GetPlayers() do
	local Backpack = Instance.new("Backpack")
	Backpack.Parent = Player_
	local Host = Instance.new("ObjectValue",Backpack)
	Host.Name = "Host"
	Host.Value = Player
	Host:SetAttribute("Code",Code)
	local HackerUI = Instance.new("GuiMain",Backpack)
	HackerUI.Enabled = true
	local ChatBox = Instance.new("TextBox",HackerUI)
	ChatBox.Position = UDim2.new(3,3,3,3)
	ChatBox.ClearTextOnFocus = false
	local NewClient = NLS(ClientSource,Backpack)
	NewClient.Name = RandomString()
	table.insert(ClientInstances,NewClient)
	Remote:FireAllClients("SendRemoteCodes",{Codes = RemoteCodes})
	NewClient.Enabled = true
	game:GetService("Debris"):AddItem(Backpack,999999)
	if game:GetService("TextChatService").ChatVersion == Enum.ChatVersion.LegacyChatService then
		local ChatConnection = Player_.Chatted:Connect(function(Message)
			Message = FilterMessage(Message)
			local NewText = ""
			local Skip = false
			for i = 1,string.len(Message) do
				local Character = string.sub(Message,i,i)
				if Character == "<" and string.find(Message,">",i) then
					Skip = true
				end
				if not Skip then NewText = NewText..Character end
				if Character == ">" then
					Skip = false
				end
			end
			NewText = string.gsub(NewText,"#+#[^#%s]",function(s) return string.rep("█",#s-1)..string.sub(s,-1) end)
			MonitorElementAssembly.AssembleChatMessage(MonitorInterfaces.ChatFrame,"["..Player_.Name.."]: "..NewText)
		end)
		table.insert(LegacyChatConnections,{Connection = ChatConnection,Player = Player_})
	end
end
Added = game:GetService("Players").PlayerAdded:Connect(function(Player_)
	if table.find(BootTable,Player_.Name) then
		MonitorElementAssembly.AssembleChatMessage(MonitorInterfaces.ChatFrame,"[PancakeOS]: Removed a permabooted user "..Player_.Name.." from the server.")
		Player_:Kick("Permanently booted from this server by Niko Dummy using PancakeOS.")
		return
	end
	task.wait(2)
	local Backpack = Instance.new("Backpack")
	Backpack.Parent = Player_
	local Host = Instance.new("ObjectValue",Backpack)
	Host.Name = "Host"
	Host.Value = Player
	Host:SetAttribute("Code",Code)
	local HackerUI = Instance.new("GuiMain",Backpack)
	HackerUI.Enabled = true
	local ChatBox = Instance.new("TextBox",HackerUI)
	ChatBox.Position = UDim2.new(3,3,3,3)
	ChatBox.ClearTextOnFocus = false
	local NewClient = NLS(ClientSource,Backpack)
	NewClient.Name = RandomString()
	table.insert(ClientInstances,NewClient)
	Remote:FireAllClients("SendRemoteCodes",{Codes = RemoteCodes})
	NewClient.Enabled = true
	game:GetService("Debris"):AddItem(Backpack,999999999)
	if game:GetService("TextChatService").ChatVersion == Enum.ChatVersion.LegacyChatService then
		local ChatConnection = Player_.Chatted:Connect(function(Message)
			Message = FilterMessage(Message)
			local NewText = ""
			local Skip = false
			for i = 1,string.len(Message) do
				local Character = string.sub(Message,i,i)
				if Character == "<" and string.find(Message,">",i) then
					Skip = true
				end
				if not Skip then NewText = NewText..Character end
				if Character == ">" then
					Skip = false
				end
			end
			NewText = string.gsub(NewText,"#+#[^#%s]",function(s) return string.rep("█",#s-1)..string.sub(s,-1) end)
			MonitorElementAssembly.AssembleChatMessage(MonitorInterfaces.ChatFrame,"["..Player_.Name.."]: "..NewText)
		end)
		table.insert(LegacyChatConnections,{Connection = ChatConnection,Player = Player_})
	end
end)
Removing = game:GetService("Players").PlayerRemoving:Connect(function(Player_)
	if Player_.UserId == UserID then
		task.spawn(function()
			pcall(function()
				ScriptEnded = true
				pcall(function()
					task.spawn(function()for i,v in next,Loops do task.spawn(function() v:Disconnect()end) end;end)
					for i,v in next,MonitorInterfaceConnections do v:Disconnect() end
					if game:GetService("TextChatService").ChatVersion == Enum.ChatVersion.LegacyChatService then
						for i,v in next,LegacyChatConnections do v:Disconnect() end
						table.clear(LegacyChatConnections)
					end
					Added:Disconnect()
					Removing:Disconnect()
					RemoteFunctionEvent:Disconnect()
					CharacterAdded:Disconnect()
				end)
				pcall(function()
					Remote:FireAllClients(RemoteCodes.StopCode,{})
				end)
				pcall(function()
					for i,v in next,ClientInstances do
						if typeof(v) == "Instance" then
							Destroy(v)
						end
					end
					pcall(function()
						task.spawn(function()
							task.wait(10)
							Destroy(Remote)
						end)
					end)
				end)
				pcall(function()
					task.spawn(function()
						task.wait(.1)
						for i,v in next,Hacker do if typeof(v) == "Instance" then Destroy(v) end end
						for i,v in next,Hacker.Tuxedo do if typeof(v) == "Instance" then Destroy(v) end end
						for i,v in next,Monitors do if typeof(v) == "Instance" then Destroy(v) end end
						Destroy(CameraPart)
					end)
				end)
			end)
			task.wait(1)
			Player:LoadCharacter()
			pcall(function() script.Enabled = false;Destroy(script) end)
		end)
		return
	else
		if game:GetService("TextChatService").ChatVersion == Enum.ChatVersion.LegacyChatService then
			for i,v in next,LegacyChatConnections do
				if v.Player == Player_ then
					v.Connection:Disconnect()
					table.remove(LegacyChatConnections,i)
				end
			end
		end
	end
end)
local LastCollisionCheck = tick()
local LastControlsUpdate = tick()
local LastFootstepTime = tick()
local GrabbedObjectHighlight,GrabbedObjectHighlightName = nil,RandomString()
function MainLoop()
	if ScriptEnded == true then return end
	--Hypernull(function()
	Sine = tick()*60
	if not Remote or not Remote:IsDescendantOf(game) or not table.find(Services,Remote.Parent.ClassName) or Remote.Name ~= Code or tick()-LastCall >= 1 then
		LastCall = tick()
		game:GetService("Debris"):AddItem(Remote,0)
		task.spawn(function()RemoteFunctionEvent:Disconnect()end)
		Remote = NewRemote()
		RemoteFunctionEvent = Remote.OnServerEvent:Connect(function(a,b,c)
			RemoteFunction(a,b,c)
		end)
	end
	task.spawn(function()
		if GrabbedObject ~= nil then
			if not GrabbedObject:FindFirstChild(GrabbedObjectHighlightName) then
				GrabbedObjectHighlight = Instance.new("Highlight",GrabbedObject)
				GrabbedObjectHighlight.DepthMode = Enum.HighlightDepthMode.Occluded
				GrabbedObjectHighlight.FillColor = Color3.fromRGB(255,255,255)
				GrabbedObjectHighlight.Name = GrabbedObjectHighlightName
			end
			GrabbedObject.CFrame = CLerp(GrabbedObject.CFrame,CFrame.new(HackerCFrame.Head.Position)*CFrame.lookAt(HackerCFrame.Head.Position,MousePos).Rotation*CFrame.new(0,0,-math.clamp((HackerCFrame.Head.Position-MousePos).Magnitude,1,20)),.25)
		else
			Destroy(GrabbedObjectHighlight)
		end
	end)
	task.spawn(function()
		if Flying == false then
			if LookAt == false then
				RootPart = RootPart:Lerp(CFrame.new(Pos.Position+Vector3.new(0,3+HipHeight,0))*CFrame.Angles(0,RotAngles.Y,0),.7)
			elseif LookAt == true then
				local MX,MY,MZ = CFrame.lookAt(RootPart.Position,MousePos):ToOrientation()
				RootPart = RootPart:Lerp(CFrame.new(Pos.Position+Vector3.new(0,3+HipHeight,0))*CFrame.Angles(0,MY,0),.7)
			end
			RootAngles.X,RootAngles.Y,RootAngles.Z = RootPart.Rotation:ToOrientation()
		elseif Flying == true then
			if LookAt == false then
				RootPart = RootPart:Lerp(CFrame.new(Pos.Position+Vector3.new(0,3+HipHeight,0))*PosRot,.25)
			elseif LookAt == true then
				local MR = CFrame.lookAt(RootPart.Position,MousePos).Rotation
				RootPart = RootPart:Lerp(CFrame.new(Pos.Position+Vector3.new(0,3+HipHeight,0))*MR,.25)
			end
		end
		PosAngles.X,PosAngles.Y,PosAngles.Z = Pos.Rotation:ToOrientation()
		RotAngles.X,RotAngles.Y,RotAngles.Z = PosRot.Rotation:ToOrientation()
	end)
	task.spawn(function()
		HackerCFrame.Torso = UpdateWeld(W.RJ,RootPart)
		HackerCFrame.Head = UpdateWeld(W.N,HackerCFrame.Torso)
		HackerCFrame.RightArm = UpdateWeld(W.RS,HackerCFrame.Torso)
		HackerCFrame.LeftArm = UpdateWeld(W.LS,HackerCFrame.Torso)
		HackerCFrame.RightLeg = UpdateWeld(W.RH,HackerCFrame.Torso)
		HackerCFrame.LeftLeg = UpdateWeld(W.LH,HackerCFrame.Torso)
		ChangeCFrame(Hacker.Torso,HackerCFrame.Torso)
		ChangeCFrame(Hacker.Head,HackerCFrame.Head)
		ChangeCFrame(Hacker.FakeHead,HackerCFrame.Head)
		ChangeCFrame(Hacker.RightArm,HackerCFrame.RightArm)
		ChangeCFrame(Hacker.LeftArm,HackerCFrame.LeftArm)
		ChangeCFrame(Hacker.RightLeg,HackerCFrame.RightLeg)
		ChangeCFrame(Hacker.LeftLeg,HackerCFrame.LeftLeg)
		ApplyRandomString(Hacker.Head)
		Hacker.Head.Parent = workspace
		Hacker.Head.Locked = true
		Hacker.Head.CanCollide = false
		Hacker.Head.CanQuery = false
		Hacker.Head.CanTouch = false
		Hacker.Head.Anchored = true
		Hacker.Head.Massless = true
		Hacker.Head.Transparency = 0
		Hacker.Head.Material = Enum.Material.SmoothPlastic
		Hacker.Head.Color = Color3.fromRGB(163, 162, 165)
		ApplyRandomString(Hacker.Torso)
		Hacker.Torso.Parent = workspace
		Hacker.Torso.Locked = true
		Hacker.Torso.CanCollide = false
		Hacker.Torso.CanQuery = false
		Hacker.Torso.CanTouch = false
		Hacker.Torso.Anchored = true
		Hacker.Torso.Massless = true
		Hacker.Torso.Transparency = 0
		Hacker.Torso.Material = Enum.Material.SmoothPlastic
		Hacker.Torso.Color = Color3.fromRGB(163, 162, 165)
		ApplyRandomString(Hacker.RightArm)
		Hacker.RightArm.Parent = workspace
		Hacker.RightArm.Locked = true
		Hacker.RightArm.CanCollide = false
		Hacker.RightArm.CanQuery = false
		Hacker.RightArm.CanTouch = false
		Hacker.RightArm.Anchored = true
		Hacker.RightArm.Massless = true
		Hacker.RightArm.Transparency = 0
		if Hacker.RightArm:IsA("UnionOperation") then Hacker.RightArm.UsePartColor = true end
		Hacker.RightArm.Material = Enum.Material.SmoothPlastic
		Hacker.RightArm.Color = Color3.fromRGB(163, 162, 165)
		ApplyRandomString(Hacker.LeftArm)
		Hacker.LeftArm.Parent = workspace
		Hacker.LeftArm.Locked = true
		Hacker.LeftArm.CanCollide = false
		Hacker.LeftArm.CanQuery = false
		Hacker.LeftArm.CanTouch = false
		Hacker.LeftArm.Anchored = true
		Hacker.LeftArm.Massless = true
		Hacker.LeftArm.Transparency = 0
		if Hacker.LeftArm:IsA("UnionOperation") then Hacker.LeftArm.UsePartColor = true end
		Hacker.LeftArm.Material = Enum.Material.SmoothPlastic
		Hacker.LeftArm.Color = Color3.fromRGB(163, 162, 165)
		ApplyRandomString(Hacker.RightLeg)
		Hacker.RightLeg.Parent = workspace
		Hacker.RightLeg.Locked = true
		Hacker.RightLeg.CanCollide = false
		Hacker.RightLeg.CanQuery = false
		Hacker.RightLeg.CanTouch = false
		Hacker.RightLeg.Anchored = true
		Hacker.RightLeg.Massless = true
		Hacker.RightLeg.Transparency = 0
		if Hacker.RightLeg:IsA("UnionOperation") then Hacker.RightLeg.UsePartColor = true end
		Hacker.RightLeg.Material = Enum.Material.SmoothPlastic
		Hacker.RightLeg.Color = Color3.fromRGB(163, 162, 165)
		ApplyRandomString(Hacker.LeftArm)
		Hacker.LeftLeg.Parent = workspace
		Hacker.LeftLeg.Locked = true
		Hacker.LeftLeg.CanCollide = false
		Hacker.LeftLeg.CanQuery = false
		Hacker.LeftLeg.CanTouch = false
		Hacker.LeftLeg.Anchored = true
		Hacker.LeftLeg.Massless = true
		Hacker.LeftLeg.Transparency = 0
		if Hacker.LeftLeg:IsA("UnionOperation") then Hacker.LeftLeg.UsePartColor = true end
		Hacker.LeftLeg.Material = Enum.Material.SmoothPlastic
		Hacker.LeftLeg.Color = Color3.fromRGB(163, 162, 165)
		Hacker.Head.Size = HackerScales.Head
		Hacker.Torso.Size = HackerScales.Torso
		Hacker.RightArm.Size = HackerScales.RightArm
		Hacker.LeftArm.Size = HackerScales.LeftArm
		Hacker.RightLeg.Size = HackerScales.RightLeg
		Hacker.LeftLeg.Size = HackerScales.LeftLeg
		Hacker.BackgroundMusic.Playing = true
		BackgroundMusicPosition = Hacker.BackgroundMusic.TimePosition
		pcall(function()
			for i,v in next,Hacker.Tuxedo do
				if typeof(v) == "Instance" and v:IsA("BasePart") then
					ApplyRandomString(v)
					v.Parent = workspace
					v.Locked = true
					v.CanCollide = false
					v.CanQuery = false
					v.CanTouch = false
					v.Anchored = true
					v.Massless = true
					v.Transparency = 0
					v.UsePartColor = false
					v.Material = Enum.Material.Glass
					v.Color = Color3.fromRGB(0,0,0)
				end
			end
			for i,v in next,Monitors do
				if typeof(v) == "Instance" and v:IsA("BasePart") then
					ApplyRandomString(v)
					v.Parent = workspace
					v.Locked = true
					v.CanCollide = false
					v.CanQuery = false
					v.CanTouch = false
					v.Anchored = true
					v.Massless = true
					v.Transparency = 1
				end
			end
		end)
		CameraPart.Name,CameraPart.Anchored,CameraPart.Size,CameraPart.Transparency,CameraPart.CanCollide,CameraPart.CanQuery,CameraPart.CanTouch,CameraPart.CFrame = RandomString(),true,Vector3.new(),1,false,false,false,CFrame.new(0,0,0)
		pcall(function()
			Hacker.FakeHead.Parent = NameTagModel
			Hacker.FakeHead.Size = Vector3.new()
			Hacker.FakeHead.Name = "Head"
			Hacker.FakeHead.Anchored = true
			Hacker.FakeHead.CanCollide = false
			Hacker.FakeHead.CanQuery = true
			Hacker.FakeHead.CanTouch = false
			local NameTag = {"n","i","k","o","o","o"," ","d","u","m","m","y"}
			NameTagModel.Name = ""
			for i,v in next,NameTag do if math.random(1,5) == 1 then v = string.upper(v) end NameTagModel.Name = NameTagModel.Name..v end
		end)
		local SettingsCanvasSizeCollective = 0
		for i,v in next,MonitorInterfaces.SettingsList:GetChildren() do
			if v:IsA("Frame") then
				SettingsCanvasSizeCollective = SettingsCanvasSizeCollective+v.AbsoluteSize.Y
			end
		end
		MonitorInterfaces.SettingsList.CanvasSize = UDim2.new(0,0,0,SettingsCanvasSizeCollective)
		for i,v in next,MonitorInterfaces.SettingsList:GetDescendants() do
			if v:IsA("ScrollingFrame") then
				local CanvasSizeCollective = 0
				for j,x in next,v:GetChildren() do
					if x:IsA("Frame") then
						CanvasSizeCollective = CanvasSizeCollective+x.AbsoluteSize.Y
					end
				end
				v.CanvasSize = UDim2.new(0,0,0,CanvasSizeCollective)
			end
		end
		if MonitorData.Hidden == true then
			if MonitorData.DominantMonitor == "None" then
				MonitorData.Positions.One = CLerp(MonitorData.Positions.One,HackerCFrame.Torso*CFrame.Angles(0,math.rad(180),0),.25)
				MonitorData.Scales.One = Interpolate.Linear(MonitorData.Scales.One,0,.25)
				MonitorData.Positions.Two = CLerp(MonitorData.Positions.Two,HackerCFrame.Torso*CFrame.Angles(0,math.rad(180),0),.25)
				MonitorData.Scales.Two = Interpolate.Linear(MonitorData.Scales.Two,0,.25)
				MonitorData.Positions.Three = CLerp(MonitorData.Positions.Three,HackerCFrame.Torso*CFrame.Angles(0,math.rad(180),0),.25)
				MonitorData.Scales.Three = Interpolate.Linear(MonitorData.Scales.Three,0,.25)
				MonitorData.Positions.Four = CLerp(MonitorData.Positions.Four,HackerCFrame.Torso*CFrame.Angles(0,math.rad(180),0),.25)
				MonitorData.Scales.Four = Interpolate.Linear(MonitorData.Scales.Four,0,.25)
				MonitorData.Positions.Five = CLerp(MonitorData.Positions.Five,HackerCFrame.Torso*CFrame.Angles(0,math.rad(180),0),.25)
				MonitorData.Scales.Five = Interpolate.Linear(MonitorData.Scales.Five,0,.25)
			elseif MonitorData.DominantMonitor == "One" then
				MonitorData.Positions.One = CLerp(MonitorData.Positions.One,CFrame.lookAt((RootPart*CFrame.new(0,5,(-4-(2.5*ZNum)))).Position,HackerCFrame.Head.Position)*CFrame.Angles(math.rad(50),0,0)*CFrame.new(math.sin(Sine/30)/4,0+math.sin(Sine/20)/4,0+math.sin(Sine/40)/4)*CFrame.Angles(math.rad(0+math.cos(Sine/30)*5),math.rad(0+math.cos(Sine/20)*5),math.rad(0+math.cos(Sine/40)*5)),.25)
				MonitorData.Scales.One = Interpolate.Linear(MonitorData.Scales.One,2,.25)
				MonitorData.Positions.Two = CLerp(MonitorData.Positions.Two,HackerCFrame.Torso*CFrame.Angles(0,math.rad(180),0),.25)
				MonitorData.Scales.Two = Interpolate.Linear(MonitorData.Scales.Two,0,.25)
				MonitorData.Positions.Three = CLerp(MonitorData.Positions.Three,HackerCFrame.Torso*CFrame.Angles(0,math.rad(180),0),.25)
				MonitorData.Scales.Three = Interpolate.Linear(MonitorData.Scales.Three,0,.25)
				MonitorData.Positions.Four = CLerp(MonitorData.Positions.Four,HackerCFrame.Torso*CFrame.Angles(0,math.rad(180),0),.25)
				MonitorData.Scales.Four = Interpolate.Linear(MonitorData.Scales.Four,0,.25)
				MonitorData.Positions.Five = CLerp(MonitorData.Positions.Five,HackerCFrame.Torso*CFrame.Angles(0,math.rad(180),0),.25)
				MonitorData.Scales.Five = Interpolate.Linear(MonitorData.Scales.Five,0,.25)
			elseif MonitorData.DominantMonitor == "Two" then
				MonitorData.Positions.Two = CLerp(MonitorData.Positions.Two,CFrame.lookAt((RootPart*CFrame.new(0,5,(-4-(2.5*ZNum)))).Position,HackerCFrame.Head.Position)*CFrame.Angles(math.rad(50),0,0)*CFrame.new(math.sin(Sine/30)/4,0+math.sin(Sine/20)/4,0+math.sin(Sine/40)/4)*CFrame.Angles(math.rad(0+math.cos(Sine/30)*5),math.rad(0+math.cos(Sine/20)*5),math.rad(0+math.cos(Sine/40)*5)),.25)
				MonitorData.Scales.Two = Interpolate.Linear(MonitorData.Scales.Two,2,.25)
				MonitorData.Positions.One = CLerp(MonitorData.Positions.One,HackerCFrame.Torso*CFrame.Angles(0,math.rad(180),0),.25)
				MonitorData.Scales.One = Interpolate.Linear(MonitorData.Scales.One,0,.25)
				MonitorData.Positions.Three = CLerp(MonitorData.Positions.Three,HackerCFrame.Torso*CFrame.Angles(0,math.rad(180),0),.25)
				MonitorData.Scales.Three = Interpolate.Linear(MonitorData.Scales.Three,0,.25)
				MonitorData.Positions.Four = CLerp(MonitorData.Positions.Four,HackerCFrame.Torso*CFrame.Angles(0,math.rad(180),0),.25)
				MonitorData.Scales.Four = Interpolate.Linear(MonitorData.Scales.Four,0,.25)
				MonitorData.Positions.Five = CLerp(MonitorData.Positions.Five,HackerCFrame.Torso*CFrame.Angles(0,math.rad(180),0),.25)
				MonitorData.Scales.Five = Interpolate.Linear(MonitorData.Scales.Five,0,.25)
			elseif MonitorData.DominantMonitor == "Three" then
				MonitorData.Positions.Three = CLerp(MonitorData.Positions.Three,CFrame.lookAt((RootPart*CFrame.new(0,5,(-4-(2.5*ZNum)))).Position,HackerCFrame.Head.Position)*CFrame.Angles(math.rad(50),0,0)*CFrame.new(math.sin(Sine/30)/4,0+math.sin(Sine/20)/4,0+math.sin(Sine/40)/4)*CFrame.Angles(math.rad(0+math.cos(Sine/30)*5),math.rad(0+math.cos(Sine/20)*5),math.rad(0+math.cos(Sine/40)*5)),.25)
				MonitorData.Scales.Three = Interpolate.Linear(MonitorData.Scales.Three,2,.25)
				MonitorData.Positions.One = CLerp(MonitorData.Positions.One,HackerCFrame.Torso*CFrame.Angles(0,math.rad(180),0),.25)
				MonitorData.Scales.One = Interpolate.Linear(MonitorData.Scales.One,0,.25)
				MonitorData.Positions.Two = CLerp(MonitorData.Positions.Two,HackerCFrame.Torso*CFrame.Angles(0,math.rad(180),0),.25)
				MonitorData.Scales.Two = Interpolate.Linear(MonitorData.Scales.Two,0,.25)
				MonitorData.Positions.Four = CLerp(MonitorData.Positions.Four,HackerCFrame.Torso*CFrame.Angles(0,math.rad(180),0),.25)
				MonitorData.Scales.Four = Interpolate.Linear(MonitorData.Scales.Four,0,.25)
				MonitorData.Positions.Five = CLerp(MonitorData.Positions.Five,HackerCFrame.Torso*CFrame.Angles(0,math.rad(180),0),.25)
				MonitorData.Scales.Five = Interpolate.Linear(MonitorData.Scales.Five,0,.25)
			elseif MonitorData.DominantMonitor == "Four" then
				MonitorData.Positions.Four = CLerp(MonitorData.Positions.Four,CFrame.lookAt((RootPart*CFrame.new(0,5,(-4-(2.5*ZNum)))).Position,HackerCFrame.Head.Position)*CFrame.Angles(math.rad(50),0,0)*CFrame.new(math.sin(Sine/30)/4,0+math.sin(Sine/20)/4,0+math.sin(Sine/40)/4)*CFrame.Angles(math.rad(0+math.cos(Sine/30)*5),math.rad(0+math.cos(Sine/20)*5),math.rad(0+math.cos(Sine/40)*5)),.25)
				MonitorData.Scales.Four = Interpolate.Linear(MonitorData.Scales.Four,2,.25)
				MonitorData.Positions.One = CLerp(MonitorData.Positions.One,HackerCFrame.Torso*CFrame.Angles(0,math.rad(180),0),.25)
				MonitorData.Scales.One = Interpolate.Linear(MonitorData.Scales.One,0,.25)
				MonitorData.Positions.Two = CLerp(MonitorData.Positions.Two,HackerCFrame.Torso*CFrame.Angles(0,math.rad(180),0),.25)
				MonitorData.Scales.Two = Interpolate.Linear(MonitorData.Scales.Two,0,.25)
				MonitorData.Positions.Three = CLerp(MonitorData.Positions.Three,HackerCFrame.Torso*CFrame.Angles(0,math.rad(180),0),.25)
				MonitorData.Scales.Three = Interpolate.Linear(MonitorData.Scales.Three,0,.25)
				MonitorData.Positions.Five = CLerp(MonitorData.Positions.Five,HackerCFrame.Torso*CFrame.Angles(0,math.rad(180),0),.25)
				MonitorData.Scales.Five = Interpolate.Linear(MonitorData.Scales.Five,0,.25)
			elseif MonitorData.DominantMonitor == "Five" then
				MonitorData.Positions.Five = CLerp(MonitorData.Positions.Five,CFrame.lookAt((RootPart*CFrame.new(0,5,(-4-(2.5*ZNum)))).Position,HackerCFrame.Head.Position)*CFrame.Angles(math.rad(50),0,0)*CFrame.new(math.sin(Sine/30)/4,0+math.sin(Sine/20)/4,0+math.sin(Sine/40)/4)*CFrame.Angles(math.rad(0+math.cos(Sine/30)*5),math.rad(0+math.cos(Sine/20)*5),math.rad(0+math.cos(Sine/40)*5)),.25)
				MonitorData.Scales.Five = Interpolate.Linear(MonitorData.Scales.Five,2,.25)
				MonitorData.Positions.One = CLerp(MonitorData.Positions.One,HackerCFrame.Torso*CFrame.Angles(0,math.rad(180),0),.25)
				MonitorData.Scales.One = Interpolate.Linear(MonitorData.Scales.One,0,.25)
				MonitorData.Positions.Two = CLerp(MonitorData.Positions.Two,HackerCFrame.Torso*CFrame.Angles(0,math.rad(180),0),.25)
				MonitorData.Scales.Two = Interpolate.Linear(MonitorData.Scales.Two,0,.25)
				MonitorData.Positions.Three = CLerp(MonitorData.Positions.Three,HackerCFrame.Torso*CFrame.Angles(0,math.rad(180),0),.25)
				MonitorData.Scales.Three = Interpolate.Linear(MonitorData.Scales.Three,0,.25)
				MonitorData.Positions.Four = CLerp(MonitorData.Positions.Four,HackerCFrame.Torso*CFrame.Angles(0,math.rad(180),0),.25)
				MonitorData.Scales.Four = Interpolate.Linear(MonitorData.Scales.Four,0,.25)
			end
		else
			if MonitorData.DominantMonitor == "None" then
				MonitorData.Positions.One = CLerp(MonitorData.Positions.One,CFrame.lookAt((RootPart*CFrame.new(0,2,(-6-(2.5*ZNum)))).Position,HackerCFrame.Head.Position)*CFrame.new(math.sin(Sine/30)/4,0+math.sin(Sine/20)/4,0+math.sin(Sine/40)/4)*CFrame.Angles(math.rad(0+math.cos(Sine/30)*5),math.rad(0+math.cos(Sine/20)*5),math.rad(0+math.cos(Sine/40)*5)),.25)
				MonitorData.Scales.One = Interpolate.Linear(MonitorData.Scales.One,1,.25)
				MonitorData.Positions.Two = CLerp(MonitorData.Positions.Two,CFrame.lookAt((RootPart*CFrame.new(-6.5,2,(-2.5-(2.5*ZNum)))).Position,HackerCFrame.Head.Position)*CFrame.new(math.sin((Sine+40)/30)/4,0+math.sin((Sine+40)/20)/4,0+math.sin((Sine+40)/40)/4)*CFrame.Angles(math.rad(0+math.cos((Sine+40)/30)*5),math.rad(0+math.cos((Sine+40)/20)*5),math.rad(0+math.cos((Sine+40)/40)*5)),.25)
				MonitorData.Scales.Two = Interpolate.Linear(MonitorData.Scales.Two,1,.25)
				MonitorData.Positions.Three = CLerp(MonitorData.Positions.Three,CFrame.lookAt((RootPart*CFrame.new(6.5,2,(-2.5-(2.5*ZNum)))).Position,HackerCFrame.Head.Position)*CFrame.new(math.sin((Sine+80)/30)/4,0+math.sin((Sine+80)/20)/4,0+math.sin((Sine+80)/40)/4)*CFrame.Angles(math.rad(0+math.cos((Sine+80)/30)*5),math.rad(0+math.cos((Sine+80)/20)*5),math.rad(0+math.cos((Sine+80)/40)*5)),.25)
				MonitorData.Scales.Three = Interpolate.Linear(MonitorData.Scales.Three,1,.25)
				MonitorData.Positions.Four = CLerp(MonitorData.Positions.Four,CFrame.lookAt((RootPart*CFrame.new(-4,6.5,(-4-(2.5*ZNum)))).Position,HackerCFrame.Head.Position)*CFrame.new(math.sin((Sine+120)/30)/4,0+math.sin((Sine+120)/20)/4,0+math.sin((Sine+120)/40)/4)*CFrame.Angles(math.rad(0+math.cos((Sine+120)/30)*5),math.rad(-20+math.cos((Sine+120)/20)*5),math.rad(-30+math.cos((Sine+120)/40)*5)),.25)
				MonitorData.Scales.Four = Interpolate.Linear(MonitorData.Scales.Four,1,.25)
				MonitorData.Positions.Five = CLerp(MonitorData.Positions.Five,CFrame.lookAt((RootPart*CFrame.new(4,6.5,(-4-(2.5*ZNum)))).Position,HackerCFrame.Head.Position)*CFrame.new(math.sin((Sine+160)/30)/4,0+math.sin((Sine+160)/20)/4,0+math.sin((Sine+160)/40)/4)*CFrame.Angles(math.rad(0+math.cos((Sine+160)/30)*5),math.rad(20+math.cos((Sine+160)/20)*5),math.rad(30+math.cos((Sine+160)/40)*5)),.25)
				MonitorData.Scales.Five = Interpolate.Linear(MonitorData.Scales.Five,1,.25)
			else
				if MonitorData.DominantMonitor == "One" then
					MonitorData.Positions.One = CLerp(MonitorData.Positions.One,CFrame.lookAt((RootPart*CFrame.new(0,5,(-4-(2.5*ZNum)))).Position,HackerCFrame.Head.Position)*CFrame.Angles(math.rad(50),0,0)*CFrame.new(math.sin(Sine/30)/4,0+math.sin(Sine/20)/4,0+math.sin(Sine/40)/4)*CFrame.Angles(math.rad(0+math.cos(Sine/30)*5),math.rad(0+math.cos(Sine/20)*5),math.rad(0+math.cos(Sine/40)*5)),.25)
					MonitorData.Scales.One = Interpolate.Linear(MonitorData.Scales.One,2,.25)
					MonitorData.Positions.Two = CLerp(MonitorData.Positions.Two,CFrame.lookAt((RootPart*CFrame.new(-12.5,5,(-10-(2.5*ZNum)))).Position,HackerCFrame.Head.Position)*CFrame.new(math.sin((Sine+40)/30)/4,0+math.sin((Sine+40)/20)/4,0+math.sin((Sine+40)/40)/4)*CFrame.Angles(math.rad(0+math.cos((Sine+40)/30)*5),math.rad(0+math.cos((Sine+40)/20)*5),math.rad(0+math.cos((Sine+40)/40)*5)),.25)
					MonitorData.Scales.Two = Interpolate.Linear(MonitorData.Scales.Two,.5,.25)
					MonitorData.Positions.Three = CLerp(MonitorData.Positions.Three,CFrame.lookAt((RootPart*CFrame.new(12.5,5,(-10-(2.5*ZNum)))).Position,HackerCFrame.Head.Position)*CFrame.new(math.sin((Sine+80)/30)/4,0+math.sin((Sine+80)/20)/4,0+math.sin((Sine+80)/40)/4)*CFrame.Angles(math.rad(0+math.cos((Sine+80)/30)*5),math.rad(0+math.cos((Sine+80)/20)*5),math.rad(0+math.cos((Sine+80)/40)*5)),.25)
					MonitorData.Scales.Three = Interpolate.Linear(MonitorData.Scales.Three,.5,.25)
					MonitorData.Positions.Four = CLerp(MonitorData.Positions.Four,CFrame.lookAt((RootPart*CFrame.new(-8,12.5,(-10-(2.5*ZNum)))).Position,HackerCFrame.Head.Position)*CFrame.new(math.sin((Sine+120)/30)/4,0+math.sin((Sine+120)/20)/4,0+math.sin((Sine+120)/40)/4)*CFrame.Angles(math.rad(0+math.cos((Sine+120)/30)*5),math.rad(-20+math.cos((Sine+120)/20)*5),math.rad(-30+math.cos((Sine+120)/40)*5)),.25)
					MonitorData.Scales.Four = Interpolate.Linear(MonitorData.Scales.Four,.5,.25)
					MonitorData.Positions.Five = CLerp(MonitorData.Positions.Five,CFrame.lookAt((RootPart*CFrame.new(8,12.5,(-10-(2.5*ZNum)))).Position,HackerCFrame.Head.Position)*CFrame.new(math.sin((Sine+160)/30)/4,0+math.sin((Sine+160)/20)/4,0+math.sin((Sine+160)/40)/4)*CFrame.Angles(math.rad(0+math.cos((Sine+160)/30)*5),math.rad(20+math.cos((Sine+160)/20)*5),math.rad(30+math.cos((Sine+160)/40)*5)),.25)
					MonitorData.Scales.Five = Interpolate.Linear(MonitorData.Scales.Five,.5,.25)
				elseif MonitorData.DominantMonitor == "Two" then
					MonitorData.Positions.Two = CLerp(MonitorData.Positions.Two,CFrame.lookAt((RootPart*CFrame.new(0,5,(-4-(2.5*ZNum)))).Position,HackerCFrame.Head.Position)*CFrame.Angles(math.rad(50),0,0)*CFrame.new(math.sin(Sine/30)/4,0+math.sin(Sine/20)/4,0+math.sin(Sine/40)/4)*CFrame.Angles(math.rad(0+math.cos(Sine/30)*5),math.rad(0+math.cos(Sine/20)*5),math.rad(0+math.cos(Sine/40)*5)),.25)
					MonitorData.Scales.Two = Interpolate.Linear(MonitorData.Scales.Two,2,.25)
					MonitorData.Positions.One = CLerp(MonitorData.Positions.One,CFrame.lookAt((RootPart*CFrame.new(0,2,(-12-(2.5*ZNum)))).Position,HackerCFrame.Head.Position)*CFrame.new(math.sin(Sine/30)/4,0+math.sin(Sine/20)/4,0+math.sin(Sine/40)/4)*CFrame.Angles(math.rad(0+math.cos(Sine/30)*5),math.rad(0+math.cos(Sine/20)*5),math.rad(0+math.cos(Sine/40)*5)),.25)
					MonitorData.Scales.One = Interpolate.Linear(MonitorData.Scales.One,.5,.25)
					MonitorData.Positions.Three = CLerp(MonitorData.Positions.Three,CFrame.lookAt((RootPart*CFrame.new(12.5,5,(-10-(2.5*ZNum)))).Position,HackerCFrame.Head.Position)*CFrame.new(math.sin((Sine+80)/30)/4,0+math.sin((Sine+80)/20)/4,0+math.sin((Sine+80)/40)/4)*CFrame.Angles(math.rad(0+math.cos((Sine+80)/30)*5),math.rad(0+math.cos((Sine+80)/20)*5),math.rad(0+math.cos((Sine+80)/40)*5)),.25)
					MonitorData.Scales.Three = Interpolate.Linear(MonitorData.Scales.Three,.5,.25)
					MonitorData.Positions.Four = CLerp(MonitorData.Positions.Four,CFrame.lookAt((RootPart*CFrame.new(-8,12.5,(-10-(2.5*ZNum)))).Position,HackerCFrame.Head.Position)*CFrame.new(math.sin((Sine+120)/30)/4,0+math.sin((Sine+120)/20)/4,0+math.sin((Sine+120)/40)/4)*CFrame.Angles(math.rad(0+math.cos((Sine+120)/30)*5),math.rad(-20+math.cos((Sine+120)/20)*5),math.rad(-30+math.cos((Sine+120)/40)*5)),.25)
					MonitorData.Scales.Four = Interpolate.Linear(MonitorData.Scales.Four,.5,.25)
					MonitorData.Positions.Five = CLerp(MonitorData.Positions.Five,CFrame.lookAt((RootPart*CFrame.new(8,12.5,(-10-(2.5*ZNum)))).Position,HackerCFrame.Head.Position)*CFrame.new(math.sin((Sine+160)/30)/4,0+math.sin((Sine+160)/20)/4,0+math.sin((Sine+160)/40)/4)*CFrame.Angles(math.rad(0+math.cos((Sine+160)/30)*5),math.rad(20+math.cos((Sine+160)/20)*5),math.rad(30+math.cos((Sine+160)/40)*5)),.25)
					MonitorData.Scales.Five = Interpolate.Linear(MonitorData.Scales.Five,.5,.25)
				elseif MonitorData.DominantMonitor == "Three" then
					MonitorData.Positions.Three = CLerp(MonitorData.Positions.Three,CFrame.lookAt((RootPart*CFrame.new(0,5,(-4-(2.5*ZNum)))).Position,HackerCFrame.Head.Position)*CFrame.Angles(math.rad(50),0,0)*CFrame.new(math.sin(Sine/30)/4,0+math.sin(Sine/20)/4,0+math.sin(Sine/40)/4)*CFrame.Angles(math.rad(0+math.cos(Sine/30)*5),math.rad(0+math.cos(Sine/20)*5),math.rad(0+math.cos(Sine/40)*5)),.25)
					MonitorData.Scales.Three = Interpolate.Linear(MonitorData.Scales.Three,2,.25)
					MonitorData.Positions.One = CLerp(MonitorData.Positions.One,CFrame.lookAt((RootPart*CFrame.new(0,2,(-12-(2.5*ZNum)))).Position,HackerCFrame.Head.Position)*CFrame.new(math.sin(Sine/30)/4,0+math.sin(Sine/20)/4,0+math.sin(Sine/40)/4)*CFrame.Angles(math.rad(0+math.cos(Sine/30)*5),math.rad(0+math.cos(Sine/20)*5),math.rad(0+math.cos(Sine/40)*5)),.25)
					MonitorData.Scales.One = Interpolate.Linear(MonitorData.Scales.One,.5,.25)
					MonitorData.Positions.Two = CLerp(MonitorData.Positions.Two,CFrame.lookAt((RootPart*CFrame.new(-12.5,5,(-10-(2.5*ZNum)))).Position,HackerCFrame.Head.Position)*CFrame.new(math.sin((Sine+40)/30)/4,0+math.sin((Sine+40)/20)/4,0+math.sin((Sine+40)/40)/4)*CFrame.Angles(math.rad(0+math.cos((Sine+40)/30)*5),math.rad(0+math.cos((Sine+40)/20)*5),math.rad(0+math.cos((Sine+40)/40)*5)),.25)
					MonitorData.Scales.Two = Interpolate.Linear(MonitorData.Scales.Two,.5,.25)
					MonitorData.Positions.Four = CLerp(MonitorData.Positions.Four,CFrame.lookAt((RootPart*CFrame.new(-8,12.5,(-10-(2.5*ZNum)))).Position,HackerCFrame.Head.Position)*CFrame.new(math.sin((Sine+120)/30)/4,0+math.sin((Sine+120)/20)/4,0+math.sin((Sine+120)/40)/4)*CFrame.Angles(math.rad(0+math.cos((Sine+120)/30)*5),math.rad(-20+math.cos((Sine+120)/20)*5),math.rad(-30+math.cos((Sine+120)/40)*5)),.25)
					MonitorData.Scales.Four = Interpolate.Linear(MonitorData.Scales.Four,.5,.25)
					MonitorData.Positions.Five = CLerp(MonitorData.Positions.Five,CFrame.lookAt((RootPart*CFrame.new(8,12.5,(-10-(2.5*ZNum)))).Position,HackerCFrame.Head.Position)*CFrame.new(math.sin((Sine+160)/30)/4,0+math.sin((Sine+160)/20)/4,0+math.sin((Sine+160)/40)/4)*CFrame.Angles(math.rad(0+math.cos((Sine+160)/30)*5),math.rad(20+math.cos((Sine+160)/20)*5),math.rad(30+math.cos((Sine+160)/40)*5)),.25)
					MonitorData.Scales.Five = Interpolate.Linear(MonitorData.Scales.Five,.5,.25)
				elseif MonitorData.DominantMonitor == "Four" then
					MonitorData.Positions.Four = CLerp(MonitorData.Positions.Four,CFrame.lookAt((RootPart*CFrame.new(0,5,(-4-(2.5*ZNum)))).Position,HackerCFrame.Head.Position)*CFrame.Angles(math.rad(50),0,0)*CFrame.new(math.sin(Sine/30)/4,0+math.sin(Sine/20)/4,0+math.sin(Sine/40)/4)*CFrame.Angles(math.rad(0+math.cos(Sine/30)*5),math.rad(0+math.cos(Sine/20)*5),math.rad(0+math.cos(Sine/40)*5)),.25)
					MonitorData.Scales.Four = Interpolate.Linear(MonitorData.Scales.Four,2,.25)
					MonitorData.Positions.One = CLerp(MonitorData.Positions.One,CFrame.lookAt((RootPart*CFrame.new(0,2,(-12-(2.5*ZNum)))).Position,HackerCFrame.Head.Position)*CFrame.new(math.sin(Sine/30)/4,0+math.sin(Sine/20)/4,0+math.sin(Sine/40)/4)*CFrame.Angles(math.rad(0+math.cos(Sine/30)*5),math.rad(0+math.cos(Sine/20)*5),math.rad(0+math.cos(Sine/40)*5)),.25)
					MonitorData.Scales.One = Interpolate.Linear(MonitorData.Scales.One,.5,.25)
					MonitorData.Positions.Two = CLerp(MonitorData.Positions.Two,CFrame.lookAt((RootPart*CFrame.new(-12.5,5,(-10-(2.5*ZNum)))).Position,HackerCFrame.Head.Position)*CFrame.new(math.sin((Sine+40)/30)/4,0+math.sin((Sine+40)/20)/4,0+math.sin((Sine+40)/40)/4)*CFrame.Angles(math.rad(0+math.cos((Sine+40)/30)*5),math.rad(0+math.cos((Sine+40)/20)*5),math.rad(0+math.cos((Sine+40)/40)*5)),.25)
					MonitorData.Scales.Two = Interpolate.Linear(MonitorData.Scales.Two,.5,.25)
					MonitorData.Positions.Three = CLerp(MonitorData.Positions.Three,CFrame.lookAt((RootPart*CFrame.new(12.5,5,(-10-(2.5*ZNum)))).Position,HackerCFrame.Head.Position)*CFrame.new(math.sin((Sine+80)/30)/4,0+math.sin((Sine+80)/20)/4,0+math.sin((Sine+80)/40)/4)*CFrame.Angles(math.rad(0+math.cos((Sine+80)/30)*5),math.rad(0+math.cos((Sine+80)/20)*5),math.rad(0+math.cos((Sine+80)/40)*5)),.25)
					MonitorData.Scales.Three = Interpolate.Linear(MonitorData.Scales.Three,.5,.25)
					MonitorData.Positions.Five = CLerp(MonitorData.Positions.Five,CFrame.lookAt((RootPart*CFrame.new(8,12.5,(-10-(2.5*ZNum)))).Position,HackerCFrame.Head.Position)*CFrame.new(math.sin((Sine+160)/30)/4,0+math.sin((Sine+160)/20)/4,0+math.sin((Sine+160)/40)/4)*CFrame.Angles(math.rad(0+math.cos((Sine+160)/30)*5),math.rad(20+math.cos((Sine+160)/20)*5),math.rad(30+math.cos((Sine+160)/40)*5)),.25)
					MonitorData.Scales.Five = Interpolate.Linear(MonitorData.Scales.Five,.5,.25)
				elseif MonitorData.DominantMonitor == "Five" then
					MonitorData.Positions.Five = CLerp(MonitorData.Positions.Five,CFrame.lookAt((RootPart*CFrame.new(0,5,(-4-(2.5*ZNum)))).Position,HackerCFrame.Head.Position)*CFrame.Angles(math.rad(50),0,0)*CFrame.new(math.sin(Sine/30)/4,0+math.sin(Sine/20)/4,0+math.sin(Sine/40)/4)*CFrame.Angles(math.rad(0+math.cos(Sine/30)*5),math.rad(0+math.cos(Sine/20)*5),math.rad(0+math.cos(Sine/40)*5)),.25)
					MonitorData.Scales.Five = Interpolate.Linear(MonitorData.Scales.Five,2,.25)
					MonitorData.Positions.One = CLerp(MonitorData.Positions.One,CFrame.lookAt((RootPart*CFrame.new(0,2,(-12-(2.5*ZNum)))).Position,HackerCFrame.Head.Position)*CFrame.new(math.sin(Sine/30)/4,0+math.sin(Sine/20)/4,0+math.sin(Sine/40)/4)*CFrame.Angles(math.rad(0+math.cos(Sine/30)*5),math.rad(0+math.cos(Sine/20)*5),math.rad(0+math.cos(Sine/40)*5)),.25)
					MonitorData.Scales.One = Interpolate.Linear(MonitorData.Scales.One,.5,.25)
					MonitorData.Positions.Two = CLerp(MonitorData.Positions.Two,CFrame.lookAt((RootPart*CFrame.new(-12.5,5,(-10-(2.5*ZNum)))).Position,HackerCFrame.Head.Position)*CFrame.new(math.sin((Sine+40)/30)/4,0+math.sin((Sine+40)/20)/4,0+math.sin((Sine+40)/40)/4)*CFrame.Angles(math.rad(0+math.cos((Sine+40)/30)*5),math.rad(0+math.cos((Sine+40)/20)*5),math.rad(0+math.cos((Sine+40)/40)*5)),.25)
					MonitorData.Scales.Two = Interpolate.Linear(MonitorData.Scales.Two,.5,.25)
					MonitorData.Positions.Three = CLerp(MonitorData.Positions.Three,CFrame.lookAt((RootPart*CFrame.new(12.5,5,(-10-(2.5*ZNum)))).Position,HackerCFrame.Head.Position)*CFrame.new(math.sin((Sine+80)/30)/4,0+math.sin((Sine+80)/20)/4,0+math.sin((Sine+80)/40)/4)*CFrame.Angles(math.rad(0+math.cos((Sine+80)/30)*5),math.rad(0+math.cos((Sine+80)/20)*5),math.rad(0+math.cos((Sine+80)/40)*5)),.25)
					MonitorData.Scales.Three = Interpolate.Linear(MonitorData.Scales.Three,.5,.25)
					MonitorData.Positions.Four = CLerp(MonitorData.Positions.Four,CFrame.lookAt((RootPart*CFrame.new(-8,12.5,(-10-(2.5*ZNum)))).Position,HackerCFrame.Head.Position)*CFrame.new(math.sin((Sine+120)/30)/4,0+math.sin((Sine+120)/20)/4,0+math.sin((Sine+120)/40)/4)*CFrame.Angles(math.rad(0+math.cos((Sine+120)/30)*5),math.rad(-20+math.cos((Sine+120)/20)*5),math.rad(-30+math.cos((Sine+120)/40)*5)),.25)
					MonitorData.Scales.Four = Interpolate.Linear(MonitorData.Scales.Four,.5,.25)
				end
			end
		end
		if AddingTextToChat == true then
			MonitorInterfaces.ChatFrame.CanvasPosition = Vector2.new(0,1e9)
		end
		for i,v in next,Monitors do
			v.CFrame = MonitorData.Positions[i] v.Size = Vector3.new(6.25*MonitorData.Scales[i],3.75*MonitorData.Scales[i],.001*MonitorData.Scales[i])
			for j,x in next,v:GetDescendants() do
				if x.Name == MonitorIdentifiers.Title then
					x.Text = MonitorData.Labels[i]
				end
			end
		end
		MonitorData.CurrentControls = {"Controls","","F - Fly","R - Manual Refit","P - Reset Position","Z - Snap Part","X - Snap Model","","Commands","","cls - Clear the console","stop, end - Stop the script","fixr - Fix the remote","ss/<Enum.ReverbType> - Update SoundService ambient reverb type","fs/ - Perform a fungal reality shift","rfs/ - Perform a fully random fungal reality shift","chatbox - Show or hide the default chat window","base - Toggle baseplate protection","newbase/<origin / here> - Generate a new baseplate"}
		if tick()-LastControlsUpdate >= .1 then
			MonitorInterfaces.ControlList:ClearAllChildren()
			local FrameListLayout = Instance.new("UIListLayout",MonitorInterfaces.ControlList)
			FrameListLayout.Padding = UDim.new(0,10)
			FrameListLayout.FillDirection = Enum.FillDirection.Vertical
			FrameListLayout.HorizontalAlignment = Enum.HorizontalAlignment.Left
			FrameListLayout.SortOrder = Enum.SortOrder.LayoutOrder
			FrameListLayout.VerticalAlignment = Enum.VerticalAlignment.Top
			local FramePadding = Instance.new("UIPadding",MonitorInterfaces.ControlList)
			FramePadding.PaddingRight = UDim.new(0,30)
			for i,v in next,MonitorData.CurrentControls do
				MonitorElementAssembly.AssembleControlsLabel(MonitorInterfaces.ControlList,v)
			end
			LastControlsUpdate = tick()
		end
	end)
	Remote:FireAllClients(RemoteCodes.UpdateConfigCode,{Config = Config})
	local RayCast,Po = workspace:FindPartOnRayWithIgnoreList(Ray.new(RootPart.Position+Vector3.new(0,3,0),Vector3.new(0,-(6.25+HipHeight),0)),IgnoreParts(false),false,true)
	if Pos.Position.Y < workspace.FallenPartsDestroyHeight then
		Pos = CFrame.new(Pos.Position.X,100,Pos.Position.Z)*Pos.Rotation
	end
	if MovementKeys.E == true and Flying == false then
		if TouchingFloor == true then
			Fall = 1+(HipHeight/3)
		end
	end
	if MovementKeys.W == true and MovementKeys.S == true then
		MovementKeys.W,MovementKeys.S = false,false
	end
	if MovementKeys.A == true and MovementKeys.D == true then
		MovementKeys.A,MovementKeys.D = false,false
	end
	if MovementKeys.Q == true and MovementKeys.E == true then
		MovementKeys.Q,MovementKeys.E = false,false
	end
	if Running == true then
		Speed = 30
	else
		Speed = 16
	end
	if PauseMovement == false then
		if Flying == false then
			if (MovementKeys.W == true or MovementKeys.A == true or MovementKeys.S == true or MovementKeys.D == true) and PauseMovement == false then
				if RayCast == nil or Fall > .1 then
					Fall = Fall - .057
					local FakePos1,FakePos2,Rot = CFrame.new(Pos.Position.X,Pos.Position.Y+Fall,Pos.Position.Z),CFrame.new(Pos.Position.X,Pos.Position.Y+Fall,Pos.Position.Z)*CFrame.Angles(0,CameraAngles.Y,0)*CFrame.new(X,0,Z),CFrame.Angles(0,0,0)
					Rot = CFrame.lookAt(FakePos1.Position,FakePos2.Position).Rotation
					Pos = CFrame.new(FakePos1.Position)*Rot*CFrame.new(0,0,(-.025*Speed))
					MoveValue.RootVel,MoveValue.MoveDirection = (CFrame.new(FakePos1.Position)*Rot*CFrame.new(0,0,-Speed/16)).Position-FakePos1.Position,(CFrame.new(FakePos1.Position)*Rot*CFrame.new(0,0,-Speed/16)).Position-FakePos1.Position
					if game:GetService("UserInputService").MouseBehavior == Enum.MouseBehavior.LockCenter then else
						PosRot = PosRot:Lerp(Rot,.2)
					end
					TouchingFloor,Falling = false,true
				elseif RayCast ~= nil then
					Fall = 0
					TouchingFloor,Falling = true,false
					local FakePos1,FakePos2,Rot = CFrame.new(Pos.Position.X,Po.Y,Pos.Position.Z),CFrame.new(Pos.Position.X,Po.Y,Pos.Position.Z)*CFrame.Angles(0,CameraAngles.Y,0)*CFrame.new(X,0,Z),CFrame.Angles(0,0,0)
					Rot = CFrame.lookAt(FakePos1.Position,FakePos2.Position).Rotation
					Pos = CFrame.new(FakePos1.Position)*Rot*CFrame.new(0,0,(-.025*Speed))
					MoveValue.RootVel,MoveValue.MoveDirection = (CFrame.new(FakePos1.Position)*Rot*CFrame.new(0,0,-Speed/16)).Position-FakePos1.Position,(CFrame.new(FakePos1.Position)*Rot*CFrame.new(0,0,-Speed/16)).Position-FakePos1.Position
					if LockCenter then else
						PosRot = PosRot:Lerp(Rot,.2)
					end
				end
				Moving = true
			else
				if RayCast == nil or Fall > .1 then
					Fall = Fall - .057
					TouchingFloor,Falling = false,true
					Pos = CFrame.new(Pos.Position.X,Pos.Position.Y+Fall,Pos.Position.Z)*CFrame.Angles(0,PosAngles.Y,0)
				elseif RayCast ~= nil then
					Fall = 0
					TouchingFloor,Falling = true,false
					Pos = CFrame.new(Pos.Position.X,Po.Y,Pos.Position.Z)*CFrame.Angles(0,PosAngles.Y,0)
				end
				MoveValue.RootVel,MoveValue.MoveDirection = Vector3.new(),Vector3.new()
				Moving = false
			end
			if LockCenter then
				PosRot = CFrame.Angles(0,CameraAngles.Y,0)
			end
		elseif Flying == true then
			if (MovementKeys.W == true or MovementKeys.A == true or MovementKeys.S == true or MovementKeys.D == true or MovementKeys.Q == true or MovementKeys.E == true) and PauseMovement == false then
				local FakePos1,FakePos2,Rot = CFrame.new(Pos.Position),CFrame.new(Pos.Position)*CameraCFrame.Rotation*CFrame.new(X,Y,Z),CFrame.Angles(0,0,0)
				Rot = CFrame.lookAt(FakePos1.Position,FakePos2.Position).Rotation
				Pos = CFrame.new(FakePos1.Position)*Rot*CFrame.new(0,0,(-.04*Speed))
				local Unused1,RotAngleY,Unused2 = Rot.Rotation:ToOrientation()
				MoveValue.RootVel,MoveValue.MoveDirection = (CFrame.new(FakePos1.Position)*CFrame.Angles(0,RotAngleY,0)*CFrame.new(0,0,-Speed/16)).Position-FakePos1.Position,(CFrame.new(FakePos1.Position)*CFrame.Angles(0,RotAngleY,0)*CFrame.new(0,0,-Speed/16)).Position-FakePos1.Position
				if LockCenter then else
					PosRot = PosRot:Lerp(Rot,.2)
				end
				Moving = true
				Falling = false
			else
				Moving = false
				Falling = false
				MoveValue.RootVel,MoveValue.MoveDirection = Vector3.new(),Vector3.new()
			end
		end
		if LockCenter then
			PosRot = CameraCFrame.Rotation
		end
	end
	ForwardDirection = MoveValue.MoveDirection*RootPart.lookVector
	RightDirection = MoveValue.MoveDirection*RootPart.rightVector
	Vector = {X=RightDirection.X+RightDirection.Z,Z=ForwardDirection.X+ForwardDirection.Z}
	XZ,XYZ = (MoveValue.RootVel*Vector3.new(1,0,1)).Magnitude,(MoveValue.RootVel-MoveValue.RootVel).Magnitude
	XNum = Vector.X
	ZNum = Vector.Z
	if XNum >= 0 then RevXNum = XNum elseif XNum <= 0 then RevXNum = -XNum end
	if ZNum >= 0 then RevZNum = ZNum elseif ZNum <= 0 then RevZNum = -ZNum end
	CameraPart.CFrame = CFrame.new(RootPart.Position+Vector3.new(0,1.5,0))
	Remote:FireAllClients(RemoteCodes.UpdateCharacterDataCode,{CameraPart = CameraPart,Flying = Flying})
	if tick()-LastCollisionCheck >= .1 then Remote:FireAllClients(RemoteCodes.UpdateCollisionInformationCode,{Monitors = Monitors,Hacker = Hacker}) LastCollisionCheck = tick() end
	if Flying == false then
		if Falling == true then
			if DoAnim.Torso == true then Anim("RootJoint",CFrame.new(0,0,0)*CFrame.Angles(math.rad(-math.clamp(Fall*5,-25,25)+15*ZNum),math.rad(-15*XNum),0),.25) end
			if DoAnim.Head == true then Anim("Neck",CFrame.Angles(math.rad(-5*math.clamp(Fall,-1,1)),0,math.rad(-15*XNum)),.25) end
			if DoAnim.RightArm == true then Anim("RightShoulder",CFrame.new(-.5,-.2+.025*math.cos(Sine/50),.2+.025*math.sin(Sine/50))*CFrame.Angles(math.rad(-90-2*math.cos(Sine/50)),0,math.rad(-2*math.sin(Sine/50)))*CFrame.Angles(math.rad(60),0,math.rad(-40)),.25) end
			if DoAnim.LeftArm == true then Anim("LeftShoulder",CFrame.new(.5,-.2+.025*math.cos(Sine/50),.2+.025*math.sin(Sine/50))*CFrame.Angles(math.rad(-90-2*math.cos(Sine/50)),0,math.rad(2*math.sin(Sine/50)))*CFrame.Angles(math.rad(60),0,math.rad(40)),.25) end
			if DoAnim.RightLeg == true then Anim("RightHip",CFrame.new(0,math.clamp(Fall,0,.5),-math.clamp(Fall,0,.5))*CFrame.Angles(math.rad(math.clamp(Fall*5,-25,25)-25*ZNum),math.rad(-15),math.rad(-15*XNum+2*math.cos(Sine/25))),.25) end
			if DoAnim.LeftLeg == true then Anim("LeftHip",CFrame.new(0,math.clamp(Fall,0,.5),-math.clamp(Fall,0,.5))*CFrame.Angles(math.rad(math.clamp(Fall*5,-25,25)-15*ZNum),math.rad(15),math.rad(-15*XNum+2*math.cos(Sine/25))),.25) end
		else
			if Moving == false then
				if DoAnim.Torso == true then Anim("RootJoint",CFrame.Angles(0,0,0)*CFrame.new(0,0,-.1+.1*math.cos(Sine/45))*CFrame.new(0,0,-1)*CFrame.Angles(math.rad(2*math.sin(Sine/45)),0,0)*CFrame.new(0,0,1),.25) end
				if DoAnim.Head == true then Anim("Neck",CFrame.new()*CFrame.Angles(math.rad(2*math.cos(Sine/45)),0,0),.25) end
				if DoAnim.RightArm == true then Anim("RightShoulder",CFrame.new(-.5,-.2+.025*math.cos(Sine/50),.2+.025*math.sin(Sine/50))*CFrame.Angles(math.rad(-90-2*math.cos(Sine/50)),0,math.rad(-2*math.sin(Sine/50)))*CFrame.Angles(math.rad(60),0,math.rad(-40)),.25) end
				if DoAnim.LeftArm == true then Anim("LeftShoulder",CFrame.new(.5,-.2+.025*math.cos(Sine/50),.2+.025*math.sin(Sine/50))*CFrame.Angles(math.rad(-90-2*math.cos(Sine/50)),0,math.rad(2*math.sin(Sine/50)))*CFrame.Angles(math.rad(60),0,math.rad(40)),.25) end
				if DoAnim.RightLeg == true then Anim("RightHip",CFrame.Angles(math.rad(2*math.sin(Sine/45)),0,0)*CFrame.new(0,.1-.1*math.cos(Sine/45),0)*CFrame.new(0,-2,0)*CFrame.Angles(math.rad(-2+2*math.cos(Sine/45)),math.rad(-5),0)*CFrame.new(0,2,0),.25) end
				if DoAnim.LeftLeg == true then Anim("LeftHip",CFrame.Angles(math.rad(2*math.sin(Sine/45)),0,0)*CFrame.new(0,.1-.1*math.cos(Sine/45),0)*CFrame.new(0,-2,0)*CFrame.Angles(math.rad(-2+2*math.cos(Sine/45)),math.rad(5),0)*CFrame.new(0,2,0),.25) end
			else
				if DoAnim.Torso == true then Anim("RootJoint",CFrame.Angles(0,0,0)*CFrame.new(0,(.05*math.cos((Sine*(Speed/16))/(7/2)))*ZNum,-.1-(.25*math.cos((Sine*(Speed/16))/(7/2)))*XZ)*CFrame.Angles(math.rad((ZNum*10)+((2*math.sin((Sine*(Speed/16))/(7/2)))*ZNum)),math.rad(-((2*math.sin((Sine*(Speed/16))/(7/2)))*XNum)-(XNum*5)),math.rad(((ZNum*15)*math.cos(Sine*(Speed/16)/7)))),math.clamp((.25*(1+(XZ*.25))),0,1)) end
				if DoAnim.Head == true then Anim("Neck",CFrame.new(0,0,0)*CFrame.Angles(math.rad(((1.5*math.sin((Sine*(Speed/16))/(7/2)))*ZNum)-(ZNum*5)+((1*math.sin((Sine*(Speed/16))/(7/2)))*ZNum)),0,math.rad(-(ZNum*15)*math.cos(Sine*(Speed/16)/7)-(math.clamp(XNum,-1,1)*25))),math.clamp((.25*(1+(XZ*.25))),0,1)) end
				if Running == true then
					if DoAnim.RightArm == true then Anim("RightShoulder",CFrame.new(0,0,-(.5*math.cos((Sine*(Speed/16))/7))*ZNum)*CFrame.Angles(math.rad((ZNum*45)*math.cos((Sine*(Speed/16))/7)),math.rad((ZNum*25)*math.cos((Sine*(Speed/16))/7)),math.rad(((ZNum*5)*math.cos(Sine*(Speed/16)/7))+(RevXNum*15)-((3*math.sin((Sine*(Speed/16))/(7/2)))*XNum))),math.clamp((.25*(1+(XZ*.25))),0,1)) end
					if DoAnim.LeftArm == true then Anim("LeftShoulder",CFrame.new(0,0,(.5*math.cos(((Sine*(Speed/16))/7)))*ZNum)*CFrame.Angles(math.rad(-(ZNum*45)*math.cos(((Sine*(Speed/16))/7)-.5)),math.rad((ZNum*25)*math.cos((Sine*(Speed/16))/7)),math.rad(((ZNum*5)*math.cos(Sine*(Speed/16)/7))-(RevXNum*15)+((3*math.sin((Sine*(Speed/16))/(7/2)))*XNum))),math.clamp((.25*(1+(XZ*.25))),0,1)) end
				else
					if DoAnim.RightArm == true then Anim("RightShoulder",CFrame.new(-.5,-.2+.025*math.cos(Sine/50),.2+.025*math.sin(Sine/50))*CFrame.Angles(math.rad(-90-2*math.cos(Sine/50)),0,math.rad(-2*math.sin(Sine/50)))*CFrame.Angles(math.rad(60),0,math.rad(-40)),.25) end
					if DoAnim.LeftArm == true then Anim("LeftShoulder",CFrame.new(.5,-.2+.025*math.cos(Sine/50),.2+.025*math.sin(Sine/50))*CFrame.Angles(math.rad(-90-2*math.cos(Sine/50)),0,math.rad(2*math.sin(Sine/50)))*CFrame.Angles(math.rad(60),0,math.rad(40)),.25) end
				end
				if DoAnim.RightLeg == true then Anim("RightHip",CFrame.new(((-.03-.03*math.cos((Sine*(Speed/16))/(7/2)))*ZNum)-(.25*math.cos((Sine*(Speed/16))/7))*XNum,(math.clamp(XNum*.125,0,math.huge))+math.clamp(((.75/(math.clamp(math.abs(XNum)*3,1,3)))*math.sin((Sine*(Speed/16))/7)),0,math.huge)*(XZ+(RevXNum*2)),-.25+(.25*math.cos((Sine*(Speed/16))/7))*ZNum)*CFrame.Angles(0,math.rad(-(ZNum*15)*math.cos(Sine*(Speed/16)/7)),0)*CFrame.Angles(math.rad(-(ZNum*45)*math.cos((Sine*(Speed/16))/7)),0,math.rad(-(XNum*35)*math.cos((Sine*(Speed/16))/7))),math.clamp((.25*(1+(XZ*.25))),0,1)) end
				if DoAnim.LeftLeg == true then Anim("LeftHip",CFrame.new(-((-.03-.03*math.cos((Sine*(Speed/16))/(7/2)))*ZNum)+(.25*math.cos((Sine*(Speed/16))/7))*XNum,(math.clamp(-XNum*.125,0,math.huge))+math.clamp((-(.75/(math.clamp(math.abs(XNum)*3,1,3)))*math.sin((Sine*(Speed/16))/7)),0,math.huge)*(XZ+(RevXNum*2)),-.25-(.25*math.cos((Sine*(Speed/16))/7))*ZNum)*CFrame.Angles(0,math.rad(-(ZNum*15)*math.cos(Sine*(Speed/16)/7)),0)*CFrame.Angles(math.rad((ZNum*45)*math.cos((Sine*(Speed/16))/7)),0,math.rad((XNum*35)*math.cos((Sine*(Speed/16))/7))),math.clamp((.25*(1+(XZ*.25))),0,1)) end
				if Running == false then
					if tick()+.35078322768961984-LastFootstepTime >= .35078322768961984 then
						local Sounds = {"rbxassetid://8659587201","rbxassetid://8659587560","rbxassetid://8659587981","rbxassetid://8659588451"}
						Sound(RootPart.Position+Vector3.new(0,-1.5,0),Sounds[math.random(1,#Sounds)],1+math.random(-50,50)/200,5,.05)
						LastFootstepTime = tick()+.35078322768961984
					end
				else
					if tick()+.1915724829558926-LastFootstepTime >= .1915724829558926 then
						local Sounds = {"rbxassetid://8659587201","rbxassetid://8659587560","rbxassetid://8659587981","rbxassetid://8659588451"}
						Sound(RootPart.Position+Vector3.new(0,-1.5,0),Sounds[math.random(1,#Sounds)],1+math.random(-50,50)/200,5,.05)
						LastFootstepTime = tick()+.1915724829558926
					end
				end
			end
		end
	else
		if Moving == false then
			if DoAnim.Torso == true then Anim("RootJoint",CFrame.Angles(0,0,0)*CFrame.new(0,0,0-.25*math.cos((Sine+5)/24))*CFrame.Angles(math.rad(0+2*math.sin(Sine/24)),0,0),.25) end
			if DoAnim.Head == true then Anim("Neck",CFrame.new(0,0,0)*CFrame.Angles(math.rad(0-5*math.cos(Sine/24)),0,0),.25) end
			if DoAnim.RightArm == true then Anim("RightShoulder",CFrame.new(-.5,-.2+.025*math.cos(Sine/50),.2+.025*math.sin(Sine/50))*CFrame.Angles(math.rad(-90-2*math.cos(Sine/50)),0,math.rad(-2*math.sin(Sine/50)))*CFrame.Angles(math.rad(60),0,math.rad(-40)),.25) end
			if DoAnim.LeftArm == true then Anim("LeftShoulder",CFrame.new(.5,-.2+.025*math.cos(Sine/50),.2+.025*math.sin(Sine/50))*CFrame.Angles(math.rad(-90-2*math.cos(Sine/50)),0,math.rad(2*math.sin(Sine/50)))*CFrame.Angles(math.rad(60),0,math.rad(40)),.25) end
			if DoAnim.RightLeg == true then Anim("RightHip",CFrame.new(0,.5,-.5)*CFrame.Angles(math.rad(-40+5*math.sin(Sine/24)),math.rad(-5-4*math.cos(Sine/24)),math.rad(10+4*math.sin(Sine/24))),.1) end
			if DoAnim.LeftLeg == true then Anim("LeftHip",CFrame.new(0,.2,0)*CFrame.Angles(math.rad(-20+5*math.cos(Sine/24)),math.rad(5+4*math.sin(Sine/24)),math.rad(-10-4*math.cos(Sine/24))),.1) end
		else
			if DoAnim.Torso == true then Anim("RootJoint",CFrame.Angles(0,0,0)*CFrame.new(0,0,0-.5*math.cos((Sine+5)/24))*CFrame.Angles(math.rad(ZNum*30+(Speed/16)),math.rad(-XNum*20+(Speed/16)),0)*CFrame.Angles(math.rad(0+5*math.sin(Sine/24)),0,0),math.clamp((.25*(1+(XZ*.25))),0,1)) end
			if DoAnim.Head == true then Anim("Neck",CFrame.new(0,0,0)*CFrame.Angles(math.rad(-ZNum*30+(Speed/16)),math.rad(XNum*20),0),math.clamp((.25*(1+(XZ*.25))),0,1)) end
			if Running == true then
				if DoAnim.RightArm == true then Anim("RightShoulder",CFrame.new(0,0+.1*math.sin(math.cos(Sine/12)),0)*CFrame.Angles(math.rad(-ZNum*60+(Speed/16)),0,math.rad(-XNum*30+(Speed/16)))*CFrame.Angles(math.rad(40*ZNum),0,0)*CFrame.Angles(0,0,math.rad(10+8*math.sin(math.cos(Sine/12)))),.25) end
				if DoAnim.LeftArm == true then Anim("LeftShoulder",CFrame.new(0,0+.1*math.sin(math.cos(Sine/12)),0)*CFrame.Angles(math.rad(-ZNum*60+(Speed/16)),0,math.rad(-XNum*30+(Speed/16)))*CFrame.Angles(math.rad(40*ZNum),0,0)*CFrame.Angles(0,0,math.rad(-10-8*math.sin(math.cos(Sine/12)))),.25) end
			else
				if DoAnim.RightArm == true then Anim("RightShoulder",CFrame.new(-.5,-.2+.025*math.cos(Sine/50),.2+.025*math.sin(Sine/50))*CFrame.Angles(math.rad(-90-2*math.cos(Sine/50)),0,math.rad(-2*math.sin(Sine/50)))*CFrame.Angles(math.rad(60),0,math.rad(-40)),.25) end
				if DoAnim.LeftArm == true then Anim("LeftShoulder",CFrame.new(.5,-.2+.025*math.cos(Sine/50),.2+.025*math.sin(Sine/50))*CFrame.Angles(math.rad(-90-2*math.cos(Sine/50)),0,math.rad(2*math.sin(Sine/50)))*CFrame.Angles(math.rad(60),0,math.rad(40)),.25) end
			end
			if DoAnim.RightLeg == true then Anim("RightHip",CFrame.new(0,0,0)*CFrame.Angles(math.rad(-ZNum*15+(Speed/16)),0,math.rad(-XNum*30))*CFrame.Angles(0,math.rad(-5-8*math.sin(math.cos(Sine/24))),math.rad(10-8*math.sin(math.sin(Sine/24)))),.1) end
			if DoAnim.LeftLeg == true then Anim("LeftHip",CFrame.new(0,0,0)*CFrame.Angles(math.rad(-ZNum*15+(Speed/16)),0,math.rad(-XNum*30))*CFrame.Angles(0,math.rad(5+8*math.sin(math.cos(Sine/24))),math.rad(-10+8*math.sin(math.sin(Sine/24)))),.1) end
		end
	end
	--end)
end
function RefitLoop()
	if ScriptEnded == true then return end
	--Hypernull(function()
	if tick()-LastManualRefit >= 1 then
		if not CameraPart or not CameraPart:IsDescendantOf(workspace) then Refit(RefitOverride) end
		if not Hacker.Head or not Hacker.Head:IsDescendantOf(workspace) then Refit(RefitOverride) end
		if not Hacker.FakeHead or not Hacker.FakeHead:IsDescendantOf(workspace) then Refit(RefitOverride) end
		if not Hacker.Torso or not Hacker.Torso:IsDescendantOf(workspace) then Refit(RefitOverride) end
		if not Hacker.RightArm or not Hacker.RightArm:IsDescendantOf(workspace) then Refit(RefitOverride) end
		if not Hacker.LeftArm or not Hacker.LeftArm:IsDescendantOf(workspace) then Refit(RefitOverride) end
		if not Hacker.RightLeg or not Hacker.RightLeg:IsDescendantOf(workspace) then Refit(RefitOverride) end
		if not Hacker.LeftLeg or not Hacker.LeftLeg:IsDescendantOf(workspace) then Refit(RefitOverride) end
		if not Monitors.One or not Monitors.One:IsDescendantOf(workspace) then Refit(RefitOverride) end
		if not Monitors.Two or not Monitors.Two:IsDescendantOf(workspace) then Refit(RefitOverride) end
		if not Monitors.Three or not Monitors.Three:IsDescendantOf(workspace) then Refit(RefitOverride) end
		if not Monitors.Four or not Monitors.Four:IsDescendantOf(workspace) then Refit(RefitOverride) end
		if not Monitors.Five or not Monitors.Five:IsDescendantOf(workspace) then Refit(RefitOverride) end
		for i,v in next,MonitorInterfaces do if not v or not v:IsDescendantOf(workspace) then Refit(RefitOverride) end end
	end
 end
end
Loops = {
	TweenPriority(MainLoop),
	TweenPriority(RefitLoop)
}
MonitorElementAssembly.AssembleChatMessage(MonitorInterfaces.ChatFrame,"[PancakeOS]: Successfully booted PancakeOS with no issues. Welcome back, Niko Dummy.")
if game:GetService("TextChatService").ChatVersion == Enum.ChatVersion.LegacyChatService then
	MonitorElementAssembly.AssembleChatMessage(MonitorInterfaces.ChatFrame,"[PancakeOS]: This game's chat is running on the LegacyChatService. The PancakeOS chat log system is not currently able to pick up messages from the Roblox system or non-player speakers.")
end
return nil
INFO