Prompt:
--F.updateSound = function(Sound, Pitch, Volume)
--	if Sound then
--		if Pitch then
--			Sound.Pitch = Pitch
--		end
--		if Volume then
--			Sound.Volume = Volume
--		end
--	end
--end

Response:
F.updateWindows = function(Window, Toggle)
	if script.Parent.Parent.Windows:findFirstChild(Window) then
		script.Parent.Parent.Windows:findFirstChild(Window).Value = Toggle
	end
end

F.BreakON = function(JB)
	carSeat.Parent.Body.JB.A.Disabled = false
	carSeat.Parent.Body.JB.B.Disabled = false
	carSeat.Parent.Body.JB2.A.Disabled = false
	carSeat.Parent.Body.JB2.B.Disabled = false
				carSeat.Parent.Body.Dash.DashSc.G.Modes.SpeedStats.Unit.Text = "Damage: ON"
			carSeat.Parent.Body.Dash.DashSc.G.Modes.Info.Unit.Text = "Damage: ON"
						wait(4)
			carSeat.Parent.Body.Dash.DashSc.G.Modes.SpeedStats.Unit.Text = "MPH"
			carSeat.Parent.Body.Dash.DashSc.G.Modes.Info.Unit.Text = "No Information"
end

F.BreakOFF = function(JB)
	carSeat.Parent.Body.JB2.A.Disabled = true
	carSeat.Parent.Body.JB.A.Disabled = true
	carSeat.Parent.Body.JB2.B.Disabled = true
	carSeat.Parent.Body.JB.B.Disabled = true
				carSeat.Parent.Body.Dash.DashSc.G.Modes.SpeedStats.Unit.Text = "Damage: OFF"
			carSeat.Parent.Body.Dash.DashSc.G.Modes.Info.Unit.Text = "Damage: OFF"
						wait(4)
						carSeat.Parent.Body.Dash.DashSc.G.Modes.SpeedStats.Unit.Text = "MPH"
						carSeat.Parent.Body.Dash.DashSc.G.Modes.Info.Unit.Text = "No Information"
end
F.DashSwitch = function(Dash)
 if carSeat.Parent.DriveSeat.SS3.DashInfoSpeed.Speed.Value == true then
			carSeat.Parent.Body.Dash.DashSc.G.Select:TweenPosition(UDim2.new(0, 0, 0, 20), "Out", "Quint", 1, true)
			carSeat.Parent.Body.Dash.DashSc.G.Modes.Info.Visible = false
			carSeat.Parent.Body.Dash.DashSc.G.Modes.MPG:TweenPosition(UDim2.new(0, -100, 0, 0), "Out", "Quint", 1, true)
			carSeat.Parent.Body.Dash.DashSc.G.Modes.SpeedStats.Visible = true
			carSeat.Parent.Body.Dash.DashSc.G.Modes.SpeedStats:TweenPosition(UDim2.new(0, 0, 0, 0), "Out", "Quint", 1, true)
			carSeat.Parent.Body.Dash.DashSc.G.Modes.Stats.Visible = false
			carSeat.Parent.DriveSeat.SS3.DashInfoSpeed.Speed.Value = false
			carSeat.Parent.DriveSeat.SS3.DashInfoSpeed.Info.Value = true
			carSeat.Parent.DriveSeat.SS3.DashInfoSpeed.Version.Value = false
			carSeat.Parent.DriveSeat.SS3.DashInfoSpeed.MPG.Value = false
elseif  carSeat.Parent.DriveSeat.SS3.DashInfoSpeed.Info.Value == true then
	carSeat.Parent.Body.Dash.DashSc.G.Select:TweenPosition(UDim2.new(0, 25, 0, 20), "Out", "Quint", 1, true)
	carSeat.Parent.Body.Dash.DashSc.G.Modes.Info.Position = UDim2.new(0, 100, 0, 0)
		carSeat.Parent.Body.Dash.DashSc.G.Modes.Info.Visible = true
		carSeat.Parent.Body.Dash.DashSc.G.Modes.SpeedStats:TweenPosition(UDim2.new(0, -100, 0, 0), "Out", "Quint", 1, true)
			carSeat.Parent.Body.Dash.DashSc.G.Modes.Info:TweenPosition(UDim2.new(0, 0, 0, 0), "Out", "Quint", 1, true)
		carSeat.Parent.Body.Dash.DashSc.G.Modes.Stats.Visible = false
		carSeat.Parent.Body.Dash.DashSc.G.Modes.MPG.Visible = false
			carSeat.Parent.DriveSeat.SS3.DashInfoSpeed.Speed.Value = false
			carSeat.Parent.DriveSeat.SS3.DashInfoSpeed.Info.Value = false
			carSeat.Parent.DriveSeat.SS3.DashInfoSpeed.Version.Value = true
			carSeat.Parent.DriveSeat.SS3.DashInfoSpeed.MPG.Value = false
elseif  carSeat.Parent.DriveSeat.SS3.DashInfoSpeed.Version.Value == true then
	carSeat.Parent.Body.Dash.DashSc.G.Select:TweenPosition(UDim2.new(0, 50, 0, 20), "Out", "Quint", 1, true)
		carSeat.Parent.Body.Dash.DashSc.G.Modes.Info:TweenPosition(UDim2.new(0, -100, 0, 0), "Out", "Quint", 1, true)
		carSeat.Parent.Body.Dash.DashSc.G.Modes.Stats.Position = UDim2.new(0, 100, 0, 0)
		carSeat.Parent.Body.Dash.DashSc.G.Modes.Stats.Visible = true
		carSeat.Parent.Body.Dash.DashSc.G.Modes.Stats:TweenPosition(UDim2.new(0, 0, 0, 0), "Out", "Quint", 1, true)
		carSeat.Parent.Body.Dash.DashSc.G.Modes.SpeedStats.Visible = false
		carSeat.Parent.Body.Dash.DashSc.G.Modes.MPG.Visible = false
		carSeat.Parent.Body.Dash.DashSc.G.Modes.Stats.Visible = true
		carSeat.Parent.DriveSeat.SS3.DashInfoSpeed.Speed.Value = false
			carSeat.Parent.DriveSeat.SS3.DashInfoSpeed.Info.Value = false
			carSeat.Parent.DriveSeat.SS3.DashInfoSpeed.Version.Value = false
			carSeat.Parent.DriveSeat.SS3.DashInfoSpeed.MPG.Value = true
elseif  carSeat.Parent.DriveSeat.SS3.DashInfoSpeed.MPG.Value == true then
		carSeat.Parent.Body.Dash.DashSc.G.Modes.Info.Visible = false
		carSeat.Parent.Body.Dash.DashSc.G.Modes.SpeedStats.Visible = false
			carSeat.Parent.Body.Dash.DashSc.G.Modes.Stats:TweenPosition(UDim2.new(0, -100, 0, 0), "Out", "Quint", 1, true)
		carSeat.Parent.Body.Dash.DashSc.G.Modes.MPG.Position = UDim2.new(0, 100, 0, 0)
		carSeat.Parent.Body.Dash.DashSc.G.Modes.MPG.Visible = true
		carSeat.Parent.Body.Dash.DashSc.G.Modes.MPG:TweenPosition(UDim2.new(0, 0, 0, 0), "Out", "Quint", 1, true)
			carSeat.Parent.DriveSeat.SS3.DashInfoSpeed.Speed.Value = true
			carSeat.Parent.DriveSeat.SS3.DashInfoSpeed.Info.Value = false
			carSeat.Parent.DriveSeat.SS3.DashInfoSpeed.Version.Value = false
			carSeat.Parent.DriveSeat.SS3.DashInfoSpeed.MPG.Value = false
			carSeat.Parent.Body.Dash.DashSc.G.Select:TweenPosition(UDim2.new(0, 75, 0, 20), "Out", "Quint", 1, true)
 end
end

F.volumedown = function(VolDown)
	carSeat.Parent.Body.MP.Sound.Volume = carSeat.Parent.Body.MP.Sound.Volume - 1
				print("Music volume:"..carSeat.Parent.Body.MP.Sound.Volume)
				carSeat.Parent.Body.Dash.DashSc.G.Modes.SpeedStats.Unit.Text = "VOL: "..carSeat.Parent.Body.MP.Sound.Volume
				carSeat.Parent.Body.Dash.DashSc.G.Modes.Info.Unit.Text = "VOLUME: "..carSeat.Parent.Body.MP.Sound.Volume
				carSeat.Parent.Body.Dash.Screen.G.Radio.VOLMENU.Visible = true
				carSeat.Parent.Body.Dash.Screen.G.Radio.VOLMENU.VolumeText.Text = "VOLUME: "..carSeat.Parent.Body.MP.Sound.Volume
						wait(1)
						carSeat.Parent.Body.Dash.DashSc.G.Modes.SpeedStats.Unit.Text = "MPH"
						carSeat.Parent.Body.Dash.DashSc.G.Modes.Info.Unit.Text = "No Information"
						wait(4)
						carSeat.Parent.Body.Dash.Screen.G.Radio.VOLMENU.Visible = false
end

F.volumeup = function(VolUp)
	carSeat.Parent.Body.MP.Sound.Volume = carSeat.Parent.Body.MP.Sound.Volume + 1
				print("Music volume:"..carSeat.Parent.Body.MP.Sound.Volume)
					carSeat.Parent.Body.Dash.DashSc.G.Modes.SpeedStats.Unit.Text = "VOL: "..carSeat.Parent.Body.MP.Sound.Volume
					carSeat.Parent.Body.Dash.DashSc.G.Modes.Info.Unit.Text = "VOLUME: "..carSeat.Parent.Body.MP.Sound.Volume
					carSeat.Parent.Body.Dash.Screen.G.Radio.VOLMENU.Visible = true
				carSeat.Parent.Body.Dash.Screen.G.Radio.VOLMENU.VolumeText.Text = "VOLUME: "..carSeat.Parent.Body.MP.Sound.Volume
						wait(1)
						carSeat.Parent.Body.Dash.DashSc.G.Modes.SpeedStats.Unit.Text = "MPH"
						carSeat.Parent.Body.Dash.DashSc.G.Modes.Info.Unit.Text = "No Information"
						wait(4)
						carSeat.Parent.Body.Dash.Screen.G.Radio.VOLMENU.Visible = false
end
F.TimeUpdate = function(Time)
	carSeat.Parent.Body.Dash.DashSc.G.Modes.SpeedStats.Time.Text = game.Lighting.TimeOfDay
	carSeat.Parent.Body.Dash.DashSc.G.Modes.Info.Time.Text = game.Lighting.TimeOfDay
	carSeat.Parent.Body.Dash.Screen.G.Radio.Time.Text = game.Lighting.TimeOfDay
	carSeat.Parent.Body.Dash.DashSc.G.Modes.SpeedStats.Speed.Text = math.floor(carSeat.Velocity.magnitude*((10/12) * (60/88)))
	carSeat.Parent.Body.Dash.DashSc.G.Modes.MPG.MPGCounter.Text = math.floor(carSeat.Velocity.magnitude*((10/12) * (25/88)))
	end

F.feON = function(FEon)
carSeat.Parent.Body.Dash.DashSc.G.Modes.Info.FE.Text = "FE: ON"
carSeat.Parent.Body.Dash.DashSc.G.Modes.Stats.FE.Text = "FE: ON"
end

F.feOFF = function(FEoff)
carSeat.Parent.Body.Dash.DashSc.G.Modes.Info.FE.Text = "FE: OFF"
carSeat.Parent.Body.Dash.DashSc.G.Modes.Stats.FE.Text = "FE: OFF"
end

F.FMSwitch = function(FM)
	if carSeat.Stations.mood.Value == 5 then
		carSeat.Parent.Body.Dash.Screen.G.Radio.Select.Visible = true
		carSeat.Parent.Body.MP.Sound:Stop()
		carSeat.Stations.mood.Value = 2
		carSeat.Parent.Body.Dash.Screen.G.Radio.Song.Text = "FM 93.3"
		carSeat.Parent.Body.Dash.Screen.G.Radio.Title.Text = "HipHop Hits!"
		carSeat.Parent.Body.Dash.Screen.G.Radio.Select:TweenPosition(UDim2.new(0, 0, 0, 105), "Out", "Quint", 1, true)
	elseif carSeat.Stations.mood.Value == 2 then
		carSeat.Parent.Body.MP.Sound:Stop()
		carSeat.Parent.Body.Dash.Screen.G.Radio.Select.Visible = true
		carSeat.Stations.mood.Value = 3
		carSeat.Parent.Body.Dash.Screen.G.Radio.Song.Text = "FM 95.5"
		carSeat.Parent.Body.Dash.Screen.G.Radio.Title.Text = "Pre-2000s"
		carSeat.Parent.Body.Dash.Screen.G.Radio.Select:TweenPosition(UDim2.new(0, 0, 0, 145), "Out", "Quint", 1, true)
	elseif carSeat.Stations.mood.Value == 3 then
		carSeat.Parent.Body.MP.Sound:Stop()
		carSeat.Parent.Body.Dash.Screen.G.Radio.Select.Visible = true
		carSeat.Stations.mood.Value = 4
		carSeat.Parent.Body.Dash.Screen.G.Radio.Song.Text = "FM 94.1"
		carSeat.Parent.Body.Dash.Screen.G.Radio.Title.Text = "Indie"
		carSeat.Parent.Body.Dash.Screen.G.Radio.Select:TweenPosition(UDim2.new(0, 0, 0, 190), "Out", "Quint", 1, true)
	elseif carSeat.Stations.mood.Value == 4 then
		carSeat.Parent.Body.MP.Sound:Stop()
		carSeat.Parent.Body.Dash.Screen.G.Radio.Select.Visible = true
		carSeat.Stations.mood.Value = 1
		carSeat.Parent.Body.Dash.Screen.G.Radio.Song.Text = "FM 103.7"
		carSeat.Parent.Body.Dash.Screen.G.Radio.Title.Text = "ENERGY TOP 40"
		carSeat.Parent.Body.Dash.Screen.G.Radio.Select:TweenPosition(UDim2.new(0, 0, 0, 60), "Out", "Quint", 1, true)
	elseif carSeat.Stations.mood.Value == 1 then
		carSeat.Parent.Body.MP.Sound:Stop()
		carSeat.Parent.Body.Dash.Screen.G.Radio.Select.Visible = false
		carSeat.Stations.mood.Value = 5
		carSeat.Parent.Body.Dash.Screen.G.Radio.Song.Text = ""
		carSeat.Parent.Body.Dash.Screen.G.Radio.Title.Text = ""
	end
end

F.updateSong = function(Song)
	carSeat.Stations.mood.Value = 5
	carSeat.Parent.Body.Dash.Screen.G.Radio.Select.Visible = false
	carSeat.Parent.Body.MP.Sound:Stop()
	wait()
	carSeat.Parent.Body.MP.Sound.SoundId = "rbxassetid://"..Song
	wait()
	carSeat.Parent.Body.MP.Sound:Play()
	carSeat.Parent.Body.Dash.Screen.G.Radio.Song.Text = "Custom song"
	carSeat.Parent.Body.Dash.Screen.G.Radio.Title.Text = ""
	carSeat.Parent.Body.Dash.Screen.G.Radio.Select.Visible = false
end

F.pauseSong = function()
	carSeat.Stations.mood.Value = 5
	carSeat.Parent.Body.Dash.Screen.G.Radio.Select.Visible = false
	carSeat.Parent.Body.MP.Sound:Stop()
		carSeat.Parent.Body.Dash.Screen.G.Radio.Song.Text = "Music off"
end

F.updateVolume = function(Vol)
	carSeat.Parent.Body.MP.Sound.Volume = carSeat.Parent.Body.MP.Sound.Volume + Vol/5
end

F.updateValue = function(Val, Value)
	if Val then
		Val.Value = Value
	end
end


Prompt: -- declarations

Response:
local Figure = script.Parent
local Head = waitForChild(Figure, "Head")
local Humanoid = waitForChild(Figure, "Humanoid")
Humanoid.Health=999999


Prompt: -- dictionary of assetIds containing a list of userAssetIds

Response:
return Rodux.createReducer({}, {
	--[[
		action.assetId: string
		action.userAssetIdList: table
	]]
	[SetAvailableToSellAssetsFromFetchSellData.name] = function(state, action)
		local assetId = action.assetId
		local userAssetIdList = action.userAssetIdList

		return Cryo.Dictionary.join(state, {
			[assetId] = userAssetIdList,
		})
	end,

	--[[
		action.assetId: string
		action.userAssetId: string
	]]
	[AddAvailableToSellAsset.name] = function(state, action)
		local assetId = action.assetId
		local userAssetId = action.userAssetId
		local newList = { userAssetId }

		local currentInfo = state[assetId]
		if currentInfo then
			newList = Cryo.List.join(currentInfo, newList)
		end

		return Cryo.Dictionary.join(state, {
			[assetId] = newList,
		})
	end,

	--[[
		action.assetId: string
		action.userAssetId: string
	]]
	[RemoveAvailableToSellAsset.name] = function(state, action)
		local assetId = action.assetId

		local currentInfo = state[assetId]
		if not currentInfo then
			return state
		end

		local newList = Cryo.List.removeValue(currentInfo, action.userAssetId)

		return Cryo.Dictionary.join(state, {
			[assetId] = newList,
		})
	end,
})


Response:
mouse.KeyDown:connect(function (key)
    key = string.lower(key)
		if key == "k" then --Camera controls
	        if cam == ("car") then
				Camera.CameraSubject = player.Character.Humanoid
				Camera.CameraType = ("Custom")
				cam = ("freeplr")
				Camera.FieldOfView = 70
			elseif cam == ("freeplr") then
				Camera.CameraSubject = player.Character.Humanoid
				Camera.CameraType = ("Attach")
				cam = ("lockplr")
				Camera.FieldOfView = 45
	        elseif cam == ("lockplr") then
				Camera.CameraSubject = carSeat
				Camera.CameraType = ("Custom")
				cam = ("car")
				Camera.FieldOfView = 70
	        end
	elseif key == "u" then --Window controls
		 if windows == false then
			winfob.Visible = true
			windows = true
		 else windows = false
			winfob.Visible = false
		 end
		elseif key == "n" then --Dash Screen Switch
			if carSeat.Parent.Body.Dash.DashSc.G.Unit.Visible == false then
				handler:FireServer('DashSwitch', true)
				else
			end
			elseif key == "f" then --FM Screen Switch
			if carSeat.Parent.Body.Dash.Screen.G.Startup.Visible == false and carSeat.Parent.Body.Dash.Screen.G.Caution.Visible == false then
				handler:FireServer('FMSwitch', true)
				else
			end
		elseif key == "[" then -- volume down
			if carSeat.Parent.Body.MP.Sound.Volume >= 0 then
				handler:FireServer('volumedown', true)
			end
		elseif key == "]" then -- volume up
			if carSeat.Parent.Body.MP.Sound.Volume <= 10 then
				handler:FireServer('volumeup', true)
			end
	end
end)

HUB.Limiter.MouseButton1Click:connect(function() --Ignition
 if carSeat.IsOn.Value == false then
	carSeat.IsOn.Value = true
	carSeat.Startup:Play()
	wait(1)
	carSeat.Chime:Play()
else
	carSeat.IsOn.Value = false
end
end)

TR.SN.MouseButton1Click:connect(function() --Show tracker names
	script.Parent.Names.Value = true
end)

TR.HN.MouseButton1Click:connect(function() --Hide tracker names
	script.Parent.Names.Value = false
end)

winfob.mg.Play.MouseButton1Click:connect(function() --Play the next song
	handler:FireServer('updateSong', winfob.mg.Input.Text)
end)

winfob.mg.Stop.MouseButton1Click:connect(function() --Play the next song
	handler:FireServer('pauseSong')
end)

carSeat.Indicator.Changed:connect(function()
	if carSeat.Indicator.Value == true then
		script.Parent.Indicator:Play()
	else
		script.Parent.Indicator2:Play()
	end
end)

game.Lighting.Changed:connect(function(prop)
	if prop == "TimeOfDay" then
	handler:FireServer('TimeUpdate')
	end
end)

if game.Workspace.FilteringEnabled == true then
	handler:FireServer('feON')
elseif game.Workspace.FilteringEnabled == false then
	handler:FireServer('feOFF')
end

carSeat.LI.Changed:connect(function()
	if carSeat.LI.Value == true then
		carSeat.Parent.Body.Dash.Spd.G.Indicator.Visible = true
		script.Parent.HUB.Left.Visible = true
	else
		carSeat.Parent.Body.Dash.Spd.G.Indicator.Visible = false
		script.Parent.HUB.Left.Visible = false
	end
end)

carSeat.RI.Changed:connect(function()
	if carSeat.RI.Value == true then
		carSeat.Parent.Body.Dash.Tac.G.Indicator.Visible = true
		script.Parent.HUB.Right.Visible = true
	else
		carSeat.Parent.Body.Dash.Tac.G.Indicator.Visible = false
		script.Parent.HUB.Right.Visible = false
	end
end)

for i,v in pairs(script.Parent:getChildren()) do
	if v:IsA('TextButton') then
		v.MouseButton1Click:connect(function()
			if carSeat.Windows:FindFirstChild(v.Name) then
				local v = carSeat.Windows:FindFirstChild(v.Name)
				if v.Value == true then
					handler:FireServer('updateWindows', v.Name, false)
				else
					handler:FireServer('updateWindows', v.Name, true)
				end
			end
		end)
	end
end

while wait() do
	if carSeat.Parent:FindFirstChild("Body") then
			carSeat.Parent.Body.Dash.DashSc.G.Modes.SpeedStats.Speed.Text = math.floor(carSeat.Velocity.magnitude*((10/12) * (60/88)))
	end
end


Prompt:
-- [[ Dummiez's Data Store Score Board ]]
-- This script sends a remote request to the server to upload your current score.

Response:
wait(1)

while true do
	game.Workspace.RemoteScore.UploadScore:InvokeServer()
	wait(script.Refresh.Value)
end


Prompt:
--[=[
	@type ClientMiddlewareFn (args: {any}) -> (shouldContinue: boolean, ...: any)
	@within KnitClient

	For more info, see [ClientComm](https://sleitnick.github.io/RbxUtil/api/ClientComm/) documentation.
]=]

Response: type ClientMiddlewareFn = (args: {any}) -> (boolean, ...any)


Prompt:
-- ROBLOX deviation: skipped as Lua doesn't support ArrayBuffer
-- local arrayBufferEquality = Utils.arrayBufferEquality

Response:
local getObjectSubset = Utils.getObjectSubset
local getPath = Utils.getPath
local iterableEquality = Utils.iterableEquality
local pathAsArray = Utils.pathAsArray


Prompt: -- warn(">>>>>>>>>>>>>>> Gamepass:",id)

Response:
script.Parent.Activated:Connect(function()
	game:GetService("MarketplaceService"):PromptGamePassPurchase(game.Players.LocalPlayer,id) -- вызов метода покупки GamePass
end)

while true do
	wait()
	gp = plr:FindFirstChild("Gamepass")
	if gp ~= nil then
		local id = script.Name
		tmp = gp:FindFirstChild(id)
		if id ~= nil then
			act=script.Parent.Activat
			if id.Value == 0 then
				act.Text = "not active"
				act.TextColor3 = Color3.fromRGB(127,127,127)
			else
				act.Text = "Activated"
				act.TextColor3 = Color3.fromRGB(255,127,0)
			end
		end
	end
end


Prompt: --// Screen controls for AC6 by Itzt, originally for 2014 Infiniti QX80. i don't know how to tune ac lol

Response:
wait(0.1)
local player = game.Players.LocalPlayer
local HUB = script.Parent.HUB
local TR = script.Parent.Tracker
local limitButton = HUB.Name
local lightOn = false
local Camera = game.Workspace.CurrentCamera
local cam = script.Parent.nxtcam.Value
local carSeat = script.Parent.CarSeat.Value
local mouse = game.Players.LocalPlayer:GetMouse()
local windows = false
local winfob = HUB.Parent.Windows


Response:
function onRunning(speed)
	speed /= getRigScale()

	if speed > 0.01 then
		playAnimation("walk", 0.1, Humanoid)
		if currentAnimInstance and currentAnimInstance.AnimationId == "http://www.roblox.com/asset/?id=180426354" then
			setAnimationSpeed(speed / 14.5)
		end
		pose = "Running"
	else
		if emoteNames[currentAnim] == nil then
			playAnimation("idle", 0.1, Humanoid)
			pose = "Standing"
		end
	end
end

function onDied()
	pose = "Dead"
end

function onJumping()
	playAnimation("jump", 0.1, Humanoid)
	jumpAnimTime = jumpAnimDuration
	pose = "Jumping"
end

function onClimbing(speed)
	speed /= getRigScale()

	playAnimation("climb", 0.1, Humanoid)
	setAnimationSpeed(speed / 12.0)
	pose = "Climbing"
end

function onGettingUp()
	pose = "GettingUp"
end

function onFreeFall()
	if (jumpAnimTime <= 0) then
		playAnimation("fall", fallTransitionTime, Humanoid)
	end
	pose = "FreeFall"
end

function onFallingDown()
	pose = "FallingDown"
end

function onSeated()
	pose = "Seated"
end

function onPlatformStanding()
	pose = "PlatformStanding"
end

function onSwimming(speed)
	if speed > 0 then
		pose = "Running"
	else
		pose = "Standing"
	end
end

function getTool()
	for _, kid in ipairs(Figure:GetChildren()) do
		if kid.className == "Tool" then return kid end
	end
	return nil
end

function getToolAnim(tool)
	for _, c in ipairs(tool:GetChildren()) do
		if c.Name == "toolanim" and c.className == "StringValue" then
			return c
		end
	end
	return nil
end

function animateTool()

	if (toolAnim == "None") then
		playToolAnimation("toolnone", toolTransitionTime, Humanoid, Enum.AnimationPriority.Idle)
		return
	end

	if (toolAnim == "Slash") then
		playToolAnimation("toolslash", 0, Humanoid, Enum.AnimationPriority.Action)
		return
	end

	if (toolAnim == "Lunge") then
		playToolAnimation("toollunge", 0, Humanoid, Enum.AnimationPriority.Action)
		return
	end
end


Prompt: -- To make this work, simply group it with the model you want!

Response:
local modelbackup = script.Parent.Parent:FindFirstChild(modelname):clone()
local trigger = script.Parent

enabled = true

function onClick()

	if enabled == true then

		enabled = false
		trigger.BrickColor = BrickColor.new("Really black")

	if script.Parent.Parent:FindFirstChild(modelname) ~= nil then

		script.Parent.Parent:FindFirstChild(modelname):Destroy()

	end

		local modelclone = modelbackup:clone()
		modelclone.Parent = script.Parent.Parent
		modelclone:MakeJoints()

		wait(WaitTime)

		enabled = true
		trigger.BrickColor = BrickColor.new("Bright violet")

	end

end

script.Parent.ClickDetector.MouseClick:connect(onClick)


Prompt: -------- OMG HAX

Response:
debris = game:GetService("Debris")
r = game:service("RunService")

local damage = 15

local slash_damage = 15

sword = script.Parent.Handle
Tool = script.Parent

local SlashSound = Instance.new("Sound")
SlashSound.SoundId = "rbxasset://sounds\\swordslash.wav"
SlashSound.Parent = sword
SlashSound.Volume = 1

local UnsheathSound = Instance.new("Sound")
UnsheathSound.SoundId = "rbxasset://sounds\\unsheath.wav"
UnsheathSound.Parent = sword
UnsheathSound.Volume = 1

local DustSound = Instance.new("Sound")
	DustSound.SoundId = "http://www.roblox.com/asset/?id=16433289"
	DustSound.Parent = sword
	DustSound.Volume = 1

function isTurbo(character)
	return character:FindFirstChild("RiddlingSkull") ~= nil
end

function blow(hit)
	local humanoid = hit.Parent:findFirstChild("Humanoid")
	local vCharacter = Tool.Parent
	local vPlayer = game.Players:playerFromCharacter(vCharacter)
	local hum = vCharacter:findFirstChild("Humanoid") -- non-nil if tool held by a character
	if humanoid~=nil and humanoid ~= hum and hum ~= nil then
		-- final check, make sure sword is in-hand

		local right_arm = vCharacter:FindFirstChild("Right Arm")
		if (right_arm ~= nil) then
			local joint = right_arm:FindFirstChild("RightGrip")
			if (joint ~= nil and (joint.Part0 == sword or joint.Part1 == sword)) then
				if humanoid.Health > damage and humanoid.Health > 0 then
					tagHumanoid(humanoid, vPlayer)
					humanoid:TakeDamage(damage)
				else
					DarkKill(humanoid.Parent, humanoid, vPlayer, vCharacter)
				end
			end
		end

	end
end

function DarkKill(character, humanoid, attacker, vChar)

	if (character:FindFirstChild("ForceField") ~= nil) then return end

	DustSound:Play()

	local childs = character:GetChildren()

	local colors = {}

	tagHumanoid(humanoid, attacker)
	humanoid.Health = 0

	for i=1,#childs do
		if (childs[i].className == "Part") then
			colors[i] = childs[i].BrickColor
			childs[i].BrickColor = BrickColor.new(26)
			childs[i].CanCollide = true
			childs[i].Anchored = true
		end
		if (childs[i].Name == "Head") then
			local m = childs[i]:FindFirstChild("Mesh")
			if (m ~= nil) then
				m:Remove()
			end
			script.SkullMesh:Clone().Parent = childs[i]
			childs[i].Anchored = false
		end
	end

	wait(.25)
	local limit = 1
	if (isTurbo(vChar) == true) then limit = 3 end

	for i=1,#childs do
		if (childs[i].className == "Part" and childs[i].Name ~= "Head") then
			for n=0,limit do
				local p = Instance.new("Part")
				p.formFactor = 2
				p.Size = Vector3.new(1,.4,1)
				p.BrickColor = BrickColor.new(26)
				p.Material = Enum.Material.Concrete
				p.TopSurface = 0
				p.BottomSurface = 0
				p.CFrame = childs[i].CFrame + Vector3.new(0,n,0)
				childs[i]:Remove()
				p.Parent = game.Workspace
				debris:AddItem(p, 60)
			end
		end
	end

end

function tagHumanoid(humanoid, player)
	local creator_tag = Instance.new("ObjectValue")
	creator_tag.Value = player
	creator_tag.Name = "creator"
	creator_tag.Parent = humanoid
	debris:AddItem(creator_tag, 1)
end

function attack()
	damage = slash_damage
	SlashSound:play()
	local anim = Instance.new("StringValue")
	anim.Name = "toolanim"
	anim.Value = "Slash"
	anim.Parent = Tool
end

function swordUp()
	Tool.GripForward = Vector3.new(-1,0,0)
	Tool.GripRight = Vector3.new(0,1,0)
	Tool.GripUp = Vector3.new(0,0,1)
end

function swordOut()
	Tool.GripForward = Vector3.new(0,0,1)
	Tool.GripRight = Vector3.new(0,-1,0)
	Tool.GripUp = Vector3.new(-1,0,0)
end

Tool.Enabled = true

function onActivated()

	if not Tool.Enabled then
		return
	end

	Tool.Enabled = false

	local character = Tool.Parent;
	local humanoid = character.Humanoid
	if humanoid == nil then
		print("Humanoid not found")
		return
	end

	if (isTurbo(character) == true) then
		slash_damage = 20
	else
		slash_damage = 15
	end

	attack()

	wait(1)

	Tool.Enabled = true
end

function onEquipped()
	UnsheathSound:play()
end

script.Parent.Activated:connect(onActivated)
script.Parent.Equipped:connect(onEquipped)

connection = sword.Touched:connect(blow)


Prompt:
--[[**
	ensures Lua primitive table type

	@param value The value to check against

	@returns True iff the condition is satisfied, false otherwise
**--]]

Response: t.table = t.typeof("table")


Prompt:
--[=[
	Flattens all the brios in one brio and combines them. Note that this method leads to
	gaps in the lifetime of the brio.

	@deprecated 3.6.0 -- This method does not wrap the resulting value in a Brio, which can sometimes lead to leaks.
	@param observables { [any]: Observable<Brio<T>> | Observable<T> | T }
	@return Observable<Brio<{ [any]: T }>>
]=]

Response:
function RxBrioUtils.combineLatest(observables)
	assert(type(observables) == "table", "Bad observables")

	warn("[RxBrioUtils.combineLatest] - Deprecated since 3.6.0. Use RxBrioUtils.flatCombineLatest")

	return Rx.combineLatest(observables)
		:Pipe({
			Rx.map(BrioUtils.flatten);
			RxBrioUtils.onlyLastBrioSurvives();
		})
end


Prompt:
--[[
  -- product
   ["AssetId"] = 0,
    ["AssetTypeId"] = 0,
    ["Created"] = "2023-05-17T18:00:11.7196645Z",
    ["Creator"] =  ▶ {...},
    ["Description"] = "example description",
    ["DisplayDescription"] = "example description",
    ["DisplayIconImageAssetId"] = 0,
    ["DisplayName"] = "developer product test",
    ["IconImageAssetId"] = 0,
    ["IsForSale"] = true,
    ["IsLimited"] = false,
    ["IsLimitedUnique"] = false,
    ["IsNew"] = true,
    ["IsPublicDomain"] = false,
    ["MinimumMembershipLevel"] = 0,
    ["Name"] = "developer product test",
    ["PriceInRobux"] = 1000000000,
    ["ProductId"] = 1543290027,
    ["ProductType"] = "Developer Product",
    ["TargetId"] = 23596539,
    ["Updated"] = "2023-05-17T18:00:42.4963917Z"

  --badge
   {
    ["Description"] = "",
    ["IconImageId"] = 11132927395,
    ["IsEnabled"] = false,
    ["Name"] = "Example Badge"
  }

  	--BadgeService:GetBadgeInfoAsync()
	--BadgeService:AwardBadge()
	--BadgeService:UserHasBadgeAsync()

]]

Response:
function module.AwardBadge(userId: number, badgeId: number): boolean?
	local func = Functions.badges[badgeId]
	if not func or BadgeService:UserHasBadgeAsync(userId, badgeId) then return end

	local success, result = pcall(func, userId)
	assert(success, `AwardBadge error: {result}`)

	if result then
		BadgeService:AwardBadge(userId, badgeId)
	end
	return true
end


Prompt: --- Returns a table containing the parsed values for all of the arguments.

Response:
function Command:GatherArgumentValues ()
	local values = {}

	for i = 1, #self.ArgumentDefinitions do
		local arg = self.Arguments[i]
		if arg then
			values[i] = arg:GetValue()
		elseif type(self.ArgumentDefinitions[i]) == "table" then
			values[i] = self.ArgumentDefinitions[i].Default
		end
	end

	return values, #self.ArgumentDefinitions
end


Prompt:
-- ROBLOX MOVED: expect/utils.lua
-- ROBLOX TODO: (LUAU) Add seenReferences type annotation once Luau can
-- recognize that the seenReferences or {} is sufficient to make seenReferences
-- non-nil

Response:
local function getObjectSubset(object: any, subset: any, seenReferences_: { [Object]: boolean }?): any
	local seenReferences = if seenReferences_ then seenReferences_ else {}

	if Array.isArray(object) then
		if Array.isArray(subset) and #subset == #object then
			-- The return correct subclass of subset
			local subsetMap = {}

			for i, sub in ipairs(subset) do
				table.insert(subsetMap, getObjectSubset(object[i], sub))
			end
			return subsetMap
		end
	elseif getType(object) == "DateTime" then
		return object
	elseif isObject(object) and isObject(subset) then
		if equals(object, subset, { iterableEquality, subsetEquality }) then
			return subset
		end

		local trimmed: any = {}
		seenReferences[object] = trimmed

		for i, key in
			ipairs(Array.filter(Object.keys(object), function(key)
				return hasPropertyInObject(subset, key)
			end))
		do
			if seenReferences[object[key]] ~= nil then
				trimmed[key] = seenReferences[object[key]]
			else
				trimmed[key] = getObjectSubset(object[key], subset[key], seenReferences)
			end
		end

		if #Object.keys(trimmed) > 0 then
			return trimmed
		end
	end

	return object
end

return {
	-- jasmineUtils.lua
	equals = equals,
	isA = isA,
	isAsymmetric = isAsymmetric,

	-- utils.lua
	getObjectSubset = getObjectSubset,
	iterableEquality = iterableEquality,
	subsetEquality = subsetEquality,
	isObjectWithKeys = isObjectWithKeys,
	hasPropertyInObject = hasPropertyInObject,
}


Prompt:
--[[
	Represents the state relevant while executing a test plan.

	Used by TestRunner to produce a TestResults object.

	Uses the same tree building structure as TestPlanBuilder; TestSession keeps
	track of a stack of nodes that represent the current path through the tree.
]]

Response:
local TestEnum = require(script.Parent.TestEnum)
local TestResults = require(script.Parent.TestResults)
local Context = require(script.Parent.Context)

local TestSession = {}

TestSession.__index = TestSession


Prompt: --[[ SERVICES ]]

Response:
--

local TeleportService = game:GetService("TeleportService")
local Players = game:GetService("Players")


Prompt: --[[Susupension]]

Response:
	Tune.SusEnabled		= False		-- Sets whether suspension is enabled for PGS

	--Front Suspension
	Tune.FSusDamping	= 500		-- Spring Dampening
	Tune.FSusStiffness	= 9000		-- Spring Force
	Tune.FAntiRoll 		= 50		-- Anti-Roll (Gyro Dampening)

	Tune.FSusLength		= 2			-- Suspension length (in studs)
	Tune.FPreCompress	= .3		-- Pre-compression adds resting length force
	Tune.FExtensionLim	= .3		-- Max Extension Travel (in studs)
	Tune.FCompressLim	= .1		-- Max Compression Travel (in studs)
	Tune.FSusAngle		= 80		-- Suspension Angle (degrees from horizontal)

	Tune.FWsBoneLen		= 5			-- Wishbone Length
	Tune.FWsBoneAngle	= 0			-- Wishbone angle (degrees from horizontal)
	Tune.FAnchorOffset	= {			-- Suspension anchor point offset (relative to center of wheel)
	 --[[Lateral]]		-.4		,	-- positive = outward
	 --[[Vertical]]		-.5		,	-- positive = upward
	 --[[Forward]]		0		}	-- positive = forward

	--Rear Suspension
	Tune.RSusDamping	= 500		-- Spring Dampening
	Tune.RSusStiffness	= 9000		-- Spring Force
	Tune.RAntiRoll 		= 50		-- Anti-Roll (Gyro Dampening)

	Tune.RSusLength		= 2			-- Suspension length (in studs)
	Tune.RPreCompress	= .3		-- Pre-compression adds resting length force
	Tune.RExtensionLim	= .3		-- Max Extension Travel (in studs)
	Tune.RCompressLim	= .1		-- Max Compression Travel (in studs)
	Tune.RSusAngle		= 80		-- Suspension Angle (degrees from horizontal)

	Tune.RWsBoneLen		= 5			-- Wishbone Length
	Tune.RWsBoneAngle	= 0			-- Wishbone angle (degrees from horizontal)
	Tune.RAnchorOffset	= {			-- Suspension anchor point offset (relative to center of wheel)
	 --[[Lateral]]		-.4		,	-- positive = outward
	 --[[Vertical]]		-.5		,	-- positive = upward
	 --[[Forward]]		0		}	-- positive = forward

	--Aesthetics
	Tune.SusVisible		= true			-- Spring Visible
	Tune.WsBVisible		= false			-- Wishbone Visible
	Tune.SusRadius		= .2			-- Suspension Coil Radius
	Tune.SusThickness	= .1			-- Suspension Coil Thickness
	Tune.SusColor		= "Bright red"	-- Suspension Color [BrickColor]
	Tune.SusCoilCount	= 6				-- Suspension Coil Count
	Tune.WsColor		= "Black"		-- Wishbone Color [BrickColor]
	Tune.WsThickness	= .1			-- Wishbone Rod Thickness


Prompt:
--[=[
	Requires all the modules that are descendants of the given parent.
]=]

Response:
function KnitClient.AddControllersDeep(parent: Instance): { Controller }
	local addedControllers = {}
	for _, v in parent:GetDescendants() do
		if not v:IsA("ModuleScript") then
			continue
		end
		table.insert(addedControllers, require(v))
	end
	return addedControllers
end


Prompt: --Raycasting Function

Response:
local raycast = function(character, rayOrigin, rayDirection)

	local params = RaycastParams.new()
	params.FilterDescendantsInstances = {character, bloodCache}
	params.FilterType = Enum.RaycastFilterType.Blacklist
	params.IgnoreWater = true

	local raycastResult = workspace:Raycast(rayOrigin, rayDirection, params)

	if raycastResult then
		return raycastResult
	end
end


Prompt: -- Table used to hold Observer objects in memory.

Response: local strongRefs: Set<Types.Observer> = {}


Prompt: -- Give to player if player spawned or joined if used rake theme is true

Response:
function AddGui(Player)
	local GuiClone = script:FindFirstChildOfClass("ScreenGui"):Clone()
	if not Player.Character then
		Player.CharacterAdded:wait()
	end
	if Player:findFirstChild("PlayerGui"):FindFirstChild(GuiClone.Name) then
	  Player:findFirstChild("PlayerGui"):FindFirstChild(GuiClone.Name):Destroy()
	end
	GuiClone.MainRakeTheme.Disabled = false
	GuiClone.Parent = Player:findFirstChild("PlayerGui")
end

function isplr(child)
	if game.Players:findFirstChild(child.Name) or child.Name == "The_Rake" then
	for _,v in next, game.Players:GetPlayers() do
	AddGui(v)
end
	end
end

game.Players.PlayerAdded:Connect(isplr)
game.Workspace.ChildAdded:connect(isplr)

wait(1)
for _,v in next, game.Players:GetPlayers() do
	AddGui(v)
end


Prompt: -- Constants

Response:
local Remote_Events = ReplicateStorage.RemoteEvents
local RE_Character_Appearance_Loaded = Remote_Events.CharacterAppearanceLoaded


Prompt: -- map a value from one range to another

Response:
local function map(x, inMin, inMax, outMin, outMax)
	return (x - inMin)*(outMax - outMin)/(inMax - inMin) + outMin
end

local function playSound(sound)
	sound.TimePosition = 0
	sound.Playing = true
end

local function stopSound(sound)
	sound.Playing = false
	sound.TimePosition = 0
end

local function shallowCopy(t)
	local out = {}
	for k, v in pairs(t) do
		out[k] = v
	end
	return out
end

local function initializeSoundSystem(player, humanoid, rootPart)
	local sounds = {}

	-- initialize sounds
	for name, props in pairs(SOUND_DATA) do
		local sound = Instance.new("Sound")
		sound.Name = name

		-- set default values
		sound.Archivable = false
		sound.EmitterSize = 5
		sound.MaxDistance = 150
		sound.Volume = 0.65

		for propName, propValue in pairs(props) do
			sound[propName] = propValue
		end

		sound.Parent = rootPart
		sounds[name] = sound
	end

	local playingLoopedSounds = {}

	local function stopPlayingLoopedSounds(except)
		for sound in pairs(shallowCopy(playingLoopedSounds)) do
			if sound ~= except then
				sound.Playing = false
				playingLoopedSounds[sound] = nil
			end
		end
	end

	-- state transition callbacks
	local stateTransitions = {
		[Enum.HumanoidStateType.FallingDown] = function()
			stopPlayingLoopedSounds()
		end,

		[Enum.HumanoidStateType.GettingUp] = function()
			stopPlayingLoopedSounds()
			playSound(sounds.GettingUp)
		end,

		[Enum.HumanoidStateType.Jumping] = function()
			stopPlayingLoopedSounds()
			playSound(sounds.Jumping)
		end,

		[Enum.HumanoidStateType.Swimming] = function()
			local verticalSpeed = math.abs(rootPart.Velocity.Y)
			if verticalSpeed > 0.1 then
				sounds.Splash.Volume = math.clamp(map(verticalSpeed, 100, 350, 0.28, 1), 0, 1)
				playSound(sounds.Splash)
			end
			stopPlayingLoopedSounds(sounds.Swimming)
			sounds.Swimming.Playing = true
			playingLoopedSounds[sounds.Swimming] = true
		end,

		[Enum.HumanoidStateType.Freefall] = function()
			sounds.FreeFalling.Volume = 0
			stopPlayingLoopedSounds(sounds.FreeFalling)
			playingLoopedSounds[sounds.FreeFalling] = true
		end,

		[Enum.HumanoidStateType.Landed] = function()
			stopPlayingLoopedSounds()
			local verticalSpeed = math.abs(rootPart.Velocity.Y)
			if verticalSpeed > 75 then
				sounds.Landing.Volume = math.clamp(map(verticalSpeed, 50, 100, 0, 1), 0, 1)
				playSound(sounds.Landing)
			end
		end,

		[Enum.HumanoidStateType.Running] = function()
			stopPlayingLoopedSounds(sounds.Running)
			sounds.Running.Playing = true
			playingLoopedSounds[sounds.Running] = true
		end,

		[Enum.HumanoidStateType.Climbing] = function()
			local sound = sounds.Climbing
			if math.abs(rootPart.Velocity.Y) > 0.1 then
				sound.Playing = true
				stopPlayingLoopedSounds(sound)
			else
				stopPlayingLoopedSounds()
			end
			playingLoopedSounds[sound] = true
		end,

		[Enum.HumanoidStateType.Seated] = function()
			stopPlayingLoopedSounds()
		end,

		[Enum.HumanoidStateType.Dead] = function()
			stopPlayingLoopedSounds()
			playSound(sounds.Died)
		end,
	}

	-- updaters for looped sounds
	local loopedSoundUpdaters = {
		[sounds.Climbing] = function(dt, sound, vel)
			sound.Playing = vel.Magnitude > 0.1
		end,

		[sounds.FreeFalling] = function(dt, sound, vel)
			if vel.Magnitude > 75 then
				sound.Volume = math.clamp(sound.Volume + 0.9*dt, 0, 1)
			else
				sound.Volume = 0
			end
		end,

		[sounds.Running] = function(dt, sound, vel)
			sound.Playing = vel.Magnitude > 0.5 and humanoid.MoveDirection.Magnitude > 0.5
		end,
	}

	-- state substitutions to avoid duplicating entries in the state table
	local stateRemap = {
		[Enum.HumanoidStateType.RunningNoPhysics] = Enum.HumanoidStateType.Running,
	}

	local activeState = stateRemap[humanoid:GetState()] or humanoid:GetState()
	local activeConnections = {}

	local stateChangedConn = humanoid.StateChanged:Connect(function(_, state)
		state = stateRemap[state] or state

		if state ~= activeState then
			local transitionFunc = stateTransitions[state]

			if transitionFunc then
				transitionFunc()
			end

			activeState = state
		end
	end)

	local customStateChangedConn = SetState.Event:Connect(function(state)
		state = stateRemap[state] or state

		if state ~= activeState then
			local transitionFunc = stateTransitions[state]

			if transitionFunc then
				transitionFunc()
			end

			activeState = state
		end
	end)

	local steppedConn = RunService.Stepped:Connect(function(_, worldDt)
		-- update looped sounds on stepped
		for sound in pairs(playingLoopedSounds) do
			local updater = loopedSoundUpdaters[sound]

			if updater then
				updater(worldDt, sound, rootPart.Velocity)
			end
		end
	end)

	local humanoidAncestryChangedConn
	local rootPartAncestryChangedConn
	local characterAddedConn

	local function terminate()
		stateChangedConn:Disconnect()
		customStateChangedConn:Disconnect()
		steppedConn:Disconnect()
		humanoidAncestryChangedConn:Disconnect()
		rootPartAncestryChangedConn:Disconnect()
		characterAddedConn:Disconnect()
	end

	humanoidAncestryChangedConn = humanoid.AncestryChanged:Connect(function(_, parent)
		if not parent then
			terminate()
		end
	end)

	rootPartAncestryChangedConn = rootPart.AncestryChanged:Connect(function(_, parent)
		if not parent then
			terminate()
		end
	end)

	characterAddedConn = player.CharacterAdded:Connect(terminate)
end

local function playerAdded(player)
	local function characterAdded(character)
		-- Avoiding memory leaks in the face of Character/Humanoid/RootPart lifetime has a few complications:
		-- * character deparenting is a Remove instead of a Destroy, so signals are not cleaned up automatically.
		-- ** must use a waitForFirst on everything and listen for hierarchy changes.
		-- * the character might not be in the dm by the time CharacterAdded fires
		-- ** constantly check consistency with player.Character and abort if CharacterAdded is fired again
		-- * Humanoid may not exist immediately, and by the time it's inserted the character might be deparented.
		-- * RootPart probably won't exist immediately.
		-- ** by the time RootPart is inserted and Humanoid.RootPart is set, the character or the humanoid might be deparented.

		if not character.Parent then
			waitForFirst(character.AncestryChanged, player.CharacterAdded)
		end

		if player.Character ~= character or not character.Parent then
			return
		end

		local humanoid = character:FindFirstChildOfClass("Humanoid")
		while character:IsDescendantOf(game) and not humanoid do
			waitForFirst(character.ChildAdded, character.AncestryChanged, player.CharacterAdded)
			humanoid = character:FindFirstChildOfClass("Humanoid")
		end

		if player.Character ~= character or not character:IsDescendantOf(game) then
			return
		end

		-- must rely on HumanoidRootPart naming because Humanoid.RootPart does not fire changed signals
		local rootPart = character:FindFirstChild("HumanoidRootPart")
		while character:IsDescendantOf(game) and not rootPart do
			waitForFirst(character.ChildAdded, character.AncestryChanged, humanoid.AncestryChanged, player.CharacterAdded)
			rootPart = character:FindFirstChild("HumanoidRootPart")
		end

		if rootPart and humanoid:IsDescendantOf(game) and character:IsDescendantOf(game) and player.Character == character then
			initializeSoundSystem(player, humanoid, rootPart)
		end
	end

	if player.Character then
		characterAdded(player.Character)
	end
	player.CharacterAdded:Connect(characterAdded)
end

Players.PlayerAdded:Connect(playerAdded)
for _, player in ipairs(Players:GetPlayers()) do
	playerAdded(player)
end


Prompt: -- Modules

Response:
local ModuleScripts = ReplicatedStorage:WaitForChild("ModuleScripts")
local GameSettings = require(ModuleScripts:WaitForChild("GameSettings"))


Prompt: -- Initialize

Response:
sound:Play()
image.ImageTransparency = 0
cam.CameraType = Enum.CameraType.Fixed
cam.FieldOfView = 10
wait(1)
image.ImageTransparency = 1
background.BackgroundTransparency = 0
cam.CameraType = Enum.CameraType.Custom
cam.CameraSubject = player.Character.Humanoid
cam.FieldOfView = 70
game:GetService("SoundService"):SetListener(Enum.ListenerType.CFrame,CFrame.new(0,99999999,0))
sound:Stop()
player.CharacterAdded:Connect(function()
	game:GetService("SoundService"):SetListener(Enum.ListenerType.Camera)
end)


Prompt: -- We use the built-in PathfindingService. See https://wiki.roblox.com/index.php?title=API:Class/PathfindingService

Response:
local PathfindingService = game:GetService("PathfindingService")
local DEBUG = false

local Pathfinder = {}
Pathfinder.__index = Pathfinder

function Pathfinder.new(RootPart)
	assert(RootPart and RootPart:IsA("BasePart"), "Pathfinder.new(RootPart) requires a valid BasePart!")
	local Data = {
		CurrentPath = nil,
		RootPart = RootPart,
		Target = nil,
		_DrawnPath = nil
	}
	return setmetatable(Data, Pathfinder)
end


Prompt:
--[=[
	@within TableUtil
	@function DecodeJSON
	@param value any
	@return string

	Proxy for [`HttpService:JSONDecode`](https://developer.roblox.com/en-us/api-reference/function/HttpService/JSONDecode).
]=]

Response:
local function DecodeJSON(str: string): any
	return HttpService:JSONDecode(str)
end

TableUtil.Copy = Copy
TableUtil.Sync = Sync
TableUtil.Reconcile = Reconcile
TableUtil.SwapRemove = SwapRemove
TableUtil.SwapRemoveFirstValue = SwapRemoveFirstValue
TableUtil.Map = Map
TableUtil.Filter = Filter
TableUtil.Reduce = Reduce
TableUtil.Assign = Assign
TableUtil.Extend = Extend
TableUtil.Reverse = Reverse
TableUtil.Shuffle = Shuffle
TableUtil.Sample = Sample
TableUtil.Flat = Flat
TableUtil.FlatMap = FlatMap
TableUtil.Keys = Keys
TableUtil.Find = Find
TableUtil.Every = Every
TableUtil.Some = Some
TableUtil.Truncate = Truncate
TableUtil.Zip = Zip
TableUtil.Lock = Lock
TableUtil.IsEmpty = IsEmpty
TableUtil.EncodeJSON = EncodeJSON
TableUtil.DecodeJSON = DecodeJSON

return TableUtil


Prompt:
--[[

	Knit.CreateController(controller): Controller
	Knit.AddControllers(folder): Controller[]
	Knit.AddControllersDeep(folder): Controller[]
	Knit.GetService(serviceName): Service
	Knit.GetController(controllerName): Controller
	Knit.Start(): Promise<void>
	Knit.OnStart(): Promise<void>

--]]

Response:
local KnitClient = {}

KnitClient.Version = script.Parent.Version.Value
KnitClient.Player = game:GetService("Players").LocalPlayer
KnitClient.Controllers = {}
KnitClient.Util = script.Parent.Util

local Promise = require(KnitClient.Util.Promise)
local Thread = require(KnitClient.Util.Thread)
local Loader = require(KnitClient.Util.Loader)
local Ser = require(KnitClient.Util.Ser)
local ClientRemoteSignal = require(KnitClient.Util.Remote.ClientRemoteSignal)
local ClientRemoteProperty = require(KnitClient.Util.Remote.ClientRemoteProperty)
local TableUtil = require(KnitClient.Util.TableUtil)

local services = {}
local servicesFolder = script.Parent:WaitForChild("Services")

local started = false
local startedComplete = false
local onStartedComplete = Instance.new("BindableEvent")

local function BuildService(serviceName, folder)
	local service = {}
	if (folder:FindFirstChild("RF")) then
		for _,rf in ipairs(folder.RF:GetChildren()) do
			if (rf:IsA("RemoteFunction")) then
				service[rf.Name] = function(self, ...)
					return Ser.DeserializeArgsAndUnpack(rf:InvokeServer(Ser.SerializeArgsAndUnpack(...)))
				end
				service[rf.Name .. "Promise"] = function(self, ...)
					local args = Ser.SerializeArgs(...)
					return Promise.new(function(resolve)
						resolve(Ser.DeserializeArgsAndUnpack(rf:InvokeServer(table.unpack(args, 1, args.n))))
					end)
				end
			end
		end
	end
	if (folder:FindFirstChild("RE")) then
		for _,re in ipairs(folder.RE:GetChildren()) do
			if (re:IsA("RemoteEvent")) then
				service[re.Name] = ClientRemoteSignal.new(re)
			end
		end
	end
	if (folder:FindFirstChild("RP")) then
		for _,rp in ipairs(folder.RP:GetChildren()) do
			if (rp:IsA("ValueBase") or rp:IsA("RemoteEvent")) then
				service[rp.Name] = ClientRemoteProperty.new(rp)
			end
		end
	end
	services[serviceName] = service
	return service
end

function KnitClient.CreateController(controller)
	assert(type(controller) == "table", "Controller must be a table; got " .. type(controller))
	assert(type(controller.Name) == "string", "Controller.Name must be a string; got " .. type(controller.Name))
	assert(#controller.Name > 0, "Controller.Name must be a non-empty string")
	assert(KnitClient.Controllers[controller.Name] == nil, "Service \"" .. controller.Name .. "\" already exists")
	controller = TableUtil.Assign(controller, {
		_knit_is_controller = true;
	})
	KnitClient.Controllers[controller.Name] = controller
	return controller
end

function KnitClient.AddControllers(folder)
	return Loader.LoadChildren(folder)
end

function KnitClient.AddControllersDeep(folder)
	return Loader.LoadDescendants(folder)
end

function KnitClient.GetService(serviceName)
	assert(type(serviceName) == "string", "ServiceName must be a string; got " .. type(serviceName))
	local folder = servicesFolder:FindFirstChild(serviceName)
	assert(folder ~= nil, "Could not find service \"" .. serviceName .. "\"")
	return services[serviceName] or BuildService(serviceName, folder)
end

function KnitClient.GetController(controllerName)
	return KnitClient.Controllers[controllerName]
end

function KnitClient.Start()

	if (started) then
		return Promise.Reject("Knit already started")
	end

	started = true

	local controllers = KnitClient.Controllers

	return Promise.new(function(resolve)

		-- Init:
		local promisesStartControllers = {}
		for _,controller in pairs(controllers) do
			if (type(controller.KnitInit) == "function") then
				table.insert(promisesStartControllers, Promise.new(function(r)
					controller:KnitInit()
					r()
				end))
			end
		end

		resolve(Promise.All(promisesStartControllers))

	end):Then(function()

		-- Start:
		for _,controller in pairs(controllers) do
			if (type(controller.KnitStart) == "function") then
				Thread.SpawnNow(controller.KnitStart, controller)
			end
		end

		startedComplete = true
		onStartedComplete:Fire()

		Thread.Spawn(function()
			onStartedComplete:Destroy()
		end)

	end)

end

function KnitClient.OnStart()
	if (startedComplete) then
		return Promise.Resolve()
	else
		return Promise.FromEvent(onStartedComplete.Event)
	end
end

return KnitClient


Prompt: -- Get references to the Dock frame and its children

Response:
local dock = script.Parent.Parent.AdmDockShelf
local click = script.Click
local buttons = {}

for _, child in ipairs(dock:GetChildren()) do
	if child:IsA("ImageButton") then
		table.insert(buttons, child)
	end
end


Prompt:
--[[ @brief Returns the number of entries in a given table.
--]]

Response:
function module.CountMapEntries(t)
	local n = 0;
	for i in pairs(t) do
		n = n + 1;
	end
	return n;
end

module.newLayeredTable = require(script.LayeredTable).new;
module.newReadOnlyWrapper = require(script.ReadOnlyWrapper).new;

function module.AddTableToTable(t1, t2)
	local output = {};
	for i, v in pairs(t1) do
		output[i] = v + t2[i];
	end
	return output;
end
function module.AddNumberToTable(n, t)
	local output = {};
	for i, v in pairs(t) do
		output[i] = v + n;
	end
	return output;
end
function module.Add(...)
	local AddQueue = {...};
	--Peel off the last two elements and add them.
	for i = #AddQueue - 1, 1, -1 do
		local a = AddQueue[i + 1];
		local b = AddQueue[i];
		if type(a) == 'table' then
			if type(b) == 'table' then
				AddQueue[i] = module.AddTableToTable(a, b);
			else
				AddQueue[i] = module.AddNumberToTable(b, a);
			end
		else
			if type(b) == 'table' then
				AddQueue[i] = module.AddNumberToTable(a, b);
			else
				AddQueue[i] = a * b;
			end
		end
	end
	return AddQueue[1];
end

function module.MultiplyTableByTable(t1, t2)
	local output = {};
	for i = 1, #t1 do
		output[i] = t1[i] * t2[i];
	end
	return output;
end
function module.MultiplyNumberByTable(n, t)
	local output = {};
	for i = 1, #t do
		output[i] = t[i] * n;
	end
	return output;
end
function module.Multiply(t1, t2)
	if type(t1) == 'table' then
		if type(t2) == 'number' then
			return module.MultiplyNumberByTable(t2, t1);
		elseif type(t2) == 'table' then
			return module.MultiplyTableByTable(t1, t2);
		else
			Utils.Log.AssertNonNilAndType("argument 2", "table or number", t2);
		end
	elseif type(t1) == 'number' then
		if type(t2) == 'table' then
			return module.MultiplyNumberByTable(t1, t2);
		else
			Utils.Log.AssertNonNilAndType("argument 2", "table", t2);
		end
	end
end

local function rawRange(start, stop, step)
	local output = {};
	if step > 0 then
		local i = start;
		while i < stop do
			output[#output + 1] = i;
			i = i + step;
		end
	elseif step < 0 then
		local i = start;
		while i > stop do
			output[#output + 1] = i;
			i = i + step;
		end
	end
	return output;
end
function module.Range(start, stop, step)
	if start and stop and step then
		return rawRange(start, stop, step);
	elseif start and stop then
		return rawRange(start, stop, 1);
	elseif start then
		return rawRange(0, start, 1);
	else
		return {};
	end
end

function module.RangeInclusive(start, stop, step)
	return module.Range(start, stop + step/2, step);
end


Prompt: --Di base

Response:
script.Parent.Enabled = false

function Punto()
	script.Parent.Enabled = true
	task.wait(0.1)
	script.Parent.Enabled = false
end

function Linea()
	script.Parent.Enabled = true
	task.wait(0.3)
	script.Parent.Enabled = false
end

while true do
	Punto()
	task.wait(0.5)
	Punto()
	task.wait(0.5)
	Punto()
	task.wait(0.5)
	Linea()
	task.wait(0.5)
	Linea()
	task.wait(0.5)
	Linea()
	task.wait(0.5)
	Punto()
	task.wait(0.5)
	Punto()
	task.wait(0.5)
	Punto()
	task.wait(5)
end


Prompt: --[[Chassis Assembly]]

Response:
		--Create Steering Axle
		local arm=Instance.new("Part",v)
		arm.Name="Arm"
		arm.Anchored=true
		arm.CanCollide=false
		arm.FormFactor=Enum.FormFactor.Custom
		arm.Size=Vector3.new(_Tune.AxleSize,_Tune.AxleSize,_Tune.AxleSize)
		arm.CFrame=(v.CFrame*CFrame.new(0,_Tune.StAxisOffset,0))*CFrame.Angles(-math.pi/2,-math.pi/2,0)
		arm.CustomPhysicalProperties = PhysicalProperties.new(_Tune.AxleDensity,0,0,100,100)
		arm.TopSurface=Enum.SurfaceType.Smooth
		arm.BottomSurface=Enum.SurfaceType.Smooth
		arm.Transparency=1

		--Create Wheel Spindle
		local base=arm:Clone()
		base.Parent=v
		base.Name="Base"
		base.CFrame=base.CFrame*CFrame.new(0,_Tune.AxleSize,0)
		base.BottomSurface=Enum.SurfaceType.Hinge

		--Create Steering Anchor
		local axle=arm:Clone()
		axle.Parent=v
		axle.Name="Axle"
		axle.CFrame=CFrame.new(v.Position-((v.CFrame*CFrame.Angles(math.pi/2,0,0)).lookVector*((v.Size.x/2)+(axle.Size.x/2))),v.Position)*CFrame.Angles(0,math.pi,0)
		axle.BackSurface=Enum.SurfaceType.Hinge

		if v.Name=="F" or v.Name=="R" then
			local axle2=arm:Clone()
			axle2.Parent=v
			axle2.Name="Axle"
			axle2.CFrame=CFrame.new(v.Position+((v.CFrame*CFrame.Angles(math.pi/2,0,0)).lookVector*((v.Size.x/2)+(axle2.Size.x/2))),v.Position)*CFrame.Angles(0,math.pi,0)
			axle2.BackSurface=Enum.SurfaceType.Hinge
			MakeWeld(arm,axle2)
		end

		local drive=arm:Clone()
		drive.Parent=v
		drive.CFrame=v.CFrame
		drive.Name="Drive"
		drive.CanCollide=false
		MakeWeld(drive,arm)

		--Create Suspension
		if PGS_ON and _Tune.SusEnabled then
			local sa=arm:Clone()
			sa.Parent=v
			sa.Name="#SA"
			if v.Name == "FL" or v.Name=="FR" or v.Name =="F" then
				local aOff = _Tune.FAnchorOffset
				sa.CFrame=v.CFrame*CFrame.new(_Tune.AxleSize/2,-fDistX,-fDistY)*CFrame.new(aOff[3],aOff[1],-aOff[2])*CFrame.Angles(-math.pi/2,-math.pi/2,0)
			else
				local aOff = _Tune.RAnchorOffset
				sa.CFrame=v.CFrame*CFrame.new(_Tune.AxleSize/2,-rDistX,-rDistY)*CFrame.new(aOff[3],aOff[1],-aOff[2])*CFrame.Angles(-math.pi/2,-math.pi/2,0)
			end

			local sb=sa:Clone()
			sb.Parent=v
			sb.Name="#SB"
			sb.CFrame=sa.CFrame*CFrame.new(0,0,_Tune.AxleSize)

			sb.FrontSurface=Enum.SurfaceType.Hinge

			local g = Instance.new("BodyGyro",sb)
			g.Name = "Stabilizer"
			g.MaxTorque = Vector3.new(0,0,1)
			g.P = 0

			local sf1 = Instance.new("Attachment",sa)
			sf1.Name = "SAtt"

			local sf2 = sf1:Clone()
			sf2.Parent = sb

			if v.Name == "FL" or v.Name == "FR" or v.Name == "F" then
				sf1.Position = Vector3.new(fDistX-fSLX,-fDistY+fSLY,_Tune.AxleSize/2)
				sf2.Position = Vector3.new(fDistX,-fDistY,-_Tune.AxleSize/2)
			elseif v.Name == "RL" or v.Name=="RR" or v.Name == "R" then
				sf1.Position = Vector3.new(rDistX-rSLX,-rDistY+rSLY,_Tune.AxleSize/2)
				sf2.Position = Vector3.new(rDistX,-rDistY,-_Tune.AxleSize/2)
			end

			sb:MakeJoints()

			local sp = Instance.new("SpringConstraint",v)
			sp.Name = "Spring"
			sp.Attachment0 = sf1
			sp.Attachment1 = sf2
			sp.LimitsEnabled = true

			sp.Visible=_Tune.SusVisible
			sp.Radius=_Tune.SusRadius
			sp.Thickness=_Tune.SusThickness
			sp.Color=BrickColor.new(_Tune.SusColor)
			sp.Coils=_Tune.SusCoilCount

			if v.Name == "FL" or v.Name=="FR" or v.Name =="F" then
				g.D = _Tune.FAntiRoll
				sp.Damping = _Tune.FSusDamping
				sp.Stiffness = _Tune.FSusStiffness
				sp.FreeLength = _Tune.FSusLength+_Tune.FPreCompress
				sp.MaxLength = _Tune.FSusLength+_Tune.FExtensionLim
				sp.MinLength = _Tune.FSusLength-_Tune.FCompressLim
			else
				g.D = _Tune.RAntiRoll
				sp.Damping = _Tune.RSusDamping
				sp.Stiffness = _Tune.RSusStiffness
				sp.FreeLength = _Tune.RSusLength+_Tune.RPreCompress
				sp.MaxLength = _Tune.RSusLength+_Tune.RExtensionLim
				sp.MinLength = _Tune.RSusLength-_Tune.RCompressLim
			end

			MakeWeld(car.DriveSeat,sa)
			MakeWeld(sb,base)
		else
			MakeWeld(car.DriveSeat,base)
		end

		--Lock Rear Steering Axle
		if v.Name == "RL" or v.Name == "RR" or v.Name=="R" then MakeWeld(base,axle) end

		--Weld Assembly
		if v.Parent.Name == "RL" or v.Parent.Name == "RR" or v.Name=="R" then MakeWeld(car.DriveSeat,arm) end

		MakeWeld(arm,axle)

		arm:MakeJoints()
		axle:MakeJoints()

		--Weld Wheel Parts
		if v:FindFirstChild("Parts")~=nil then
			ModelWeld(v.Parts,v)
		end

		--Add Steering Gyro
		if v:FindFirstChild("Steer") then
			v:FindFirstChild("Steer"):Destroy()
		end

		if v.Name=="FL" or v.Name=="FR" or v.Name=="F" then
			local steer=Instance.new("BodyGyro",arm)
			steer.Name="Steer"
			steer.P=_Tune.SteerP
			steer.D=_Tune.SteerD
			steer.MaxTorque=Vector3.new(0,_Tune.SteerMaxTorque,0)
			steer.cframe=v.CFrame*CFrame.Angles(0,-math.pi/2,0)
		end

		--Add Stabilization Gyro
		local gyro=Instance.new("BodyGyro",v)
		gyro.Name="Stabilizer"
		gyro.MaxTorque=Vector3.new(1,0,1)
		gyro.P=0
		if v.Name=="FL" or v.Name=="FR"  or v.Name=="F" then
			gyro.D=_Tune.FGyroDamp
		else
			gyro.D=_Tune.RGyroDamp
		end

		--Add Rotational BodyMover

		local AA=Instance.new("Attachment",v) AA.Name="AA"
		AA.Orientation=Vector3.new(0,0,90)

		local AB=Instance.new("Attachment",drive) AB.Name="AB"
		AB.Orientation=Vector3.new(0,0,90)

		local AV=Instance.new("HingeConstraint",v)
		AV.Name="#AV"
		AV.Attachment0=AA
		AV.Attachment1=AB
		AV.ActuatorType="Motor"
	end


Prompt: --now, get to playing the music

Response:
local FadeoutTime = settings.MusicFadeoutTime

function PlaySound(sounddata)
	if sounddata == nil then return end
	local sound = Instance.new("Sound")
	sound.Looped = true
	sound.SoundId = sounddata.SoundId
	sound.Volume = musicon and sounddata.Volume or 0
	local v = Instance.new("NumberValue",sound)
	v.Name = "OriginalVolume"
	v.Value = sounddata.Volume
	sound.Pitch = sounddata.Pitch
	sound.Name = "BGM"
	sound.Parent = script
	sound:Play()
end

function FadeOutSound(sound)
	local basevol = sound.Volume
	local count = math.ceil(30*FadeoutTime)
	if count < 1 then
		count = 1
	end
	for i=1,count do
		if sound then
			sound.Volume = sound.Volume - (basevol / count)
			wait(1/30)
		end
	end
	if sound then
		sound:Stop()
		sound:Destroy()
	end
end

if settings.UseGlobalBackgroundMusic == true and settings.UseMusicZones == false then
	if #music[globali] == 1 then --global BGM with just 1 song? ez pz
		PlaySound(music[1][1])
		return
	elseif #music[globali] == 0 then --there's no music to play...?
		return
	end
end

local recentindices = {} --keeps track of recently selected indicies, so as not to play repeat music tracks
math.randomseed(tick())
local currentzone
local zoneplayingmusic

function CheckIfRecent(i)
	for _,v in pairs(recentindices) do
		if v == i then
			return true
		end
	end
	return false
end

function SelectRandomMusic(musiclist) --select a random number, excluding ones that were already used recently
	if musiclist == nil or #musiclist == 0 then return end
	local possiblenumbers = {}
	local selectedindex
	for i=1,#musiclist do
		if not CheckIfRecent(i) then
			table.insert(possiblenumbers,i)
		end
	end
	local selectedindex = possiblenumbers[math.random(1,#possiblenumbers)]
	table.insert(recentindices,selectedindex)
	if #recentindices > math.ceil(#musiclist / 2) then
		table.remove(recentindices,1)
	end
	return musiclist[selectedindex]
end

function IsInZone(zonedata)
	if torso and torso.Parent ~= nil then
		local p = torso.Position
		for _,data in pairs(zonedata["Parts"]) do
			if data["Coordinates"] then
				local t = data["Coordinates"]
				if (p.x > t.lx and p.x < t.mx and p.y > t.ly and p.y < t.my and p.z > t.lz and p.z < t.mz) then --is the character within all the coordinates of the zone?
					return true
				end
			elseif data["Part"] then --complex part? create a clone of the part and check if it's touching the character's torso
				local part = data["Part"]:clone()
				part.Anchored = true
				part.Parent = workspace.CurrentCamera or workspace
				part.CanCollide = true
				local touching = part:GetTouchingParts()
				part:Destroy()
				for _,v in pairs(touching) do
					if v == torso then
						return true
					end
				end
			end
		end
		return false
	end
end

function CalculateCurrentZone()
	local priority = -math.huge
	local oldzone = currentzone
	local selectedzone
	if currentzone then
		if IsInZone(currentzone) then
			selectedzone = currentzone
			priority = currentzone["Priority"]
		end
	end
	for _,zone in pairs(zones) do
		if zone["Priority"] > priority and IsInZone(zone) then
			priority = zone["Priority"]
			selectedzone = zone
		end
	end
	currentzone = selectedzone
	if currentzone ~= oldzone and (currentzone ~= nil or settings.UseGlobalBackgroundMusic == true) then
		recentindices = {}
	end
	return currentzone,oldzone
end

function RunCycle() --the main cycle which will continuously run, checking which zones (if any) the character is in and playing new music when necessary
	local bgm = script:FindFirstChild("BGM")
	if settings.UseMusicZones == true then
		local zone,oldzone = CalculateCurrentZone()
		if zone ~= oldzone and zone ~= zoneplayingmusic and bgm then
			if (zone == nil and (settings.UseGlobalBackgroundMusic == true or settings.MusicOnlyPlaysWithinZones == true)) or zone ~= nil then
				FadeOutSound(bgm)
				return
			end
		elseif zone and bgm == nil then
			PlaySound(SelectRandomMusic(zone["Music"]))
			zoneplayingmusic = zone
			return
		elseif zone == nil and oldzone and settings.MusicOnlyPlaysWithinZones == false and settings.UseGlobalBackgroundMusic == false and bgm == nil then
			PlaySound(SelectRandomMusic(oldzone["Music"]))
			zoneplayingmusic = oldzone
			return
		elseif zoneplayingmusic and settings.MusicOnlyPlaysWithinZones == false and settings.UseGlobalBackgroundMusic == false and bgm == nil then
			PlaySound(SelectRandomMusic(zoneplayingmusic["Music"]))
			return
		elseif settings.UseGlobalBackgroundMusic == true and bgm == nil then
			PlaySound(SelectRandomMusic(music[globali]))
			zoneplayingmusic = nil
			return
		end
	elseif bgm == nil and settings.UseGlobalBackgroundMusic == true then
		PlaySound(SelectRandomMusic(music[globali]))
		return
	end

	if bgm and (settings.UseGlobalBackgroundMusic == true and zoneplayingmusic == nil and #music[globali] > 1) or (zoneplayingmusic and #zoneplayingmusic["Music"] > 1) then
		local length = bgm.TimeLength
		local pos = bgm.TimePosition
		if length ~= 0 and length - pos < FadeoutTime + .5 then
			FadeOutSound(bgm)
		end
	end
end

while wait(.5) do
	RunCycle()
end


Prompt: -- LOCAL

Response:
local starterGui = game:GetService("StarterGui")
local guiService = game:GetService("GuiService")
local hapticService = game:GetService("HapticService")
local runService = game:GetService("RunService")
local userInputService = game:GetService("UserInputService")
local tweenService = game:GetService("TweenService")
local players = game:GetService("Players")
local IconController = {}
local replicatedStorage = game:GetService("ReplicatedStorage")
local Signal = require(script.Parent.Signal)
local TopbarPlusGui = require(script.Parent.TopbarPlusGui)
local topbarIcons = {}
local fakeChatName = "_FakeChat"
local forceTopbarDisabled = false
local menuOpen
local topbarUpdating = false
local STUPID_CONTROLLER_OFFSET = 32


Prompt: -- Servic

Response: local rp = game:GetService("ReplicatedStorage")


Prompt: -- public constructors

Response:
function vec.new(t)
	return setmetatable(t, vec_mt);
end


Prompt: --DO NOT CHANGE ANYTHING INSIDE OF THIS SCRIPT BESIDES WHAT YOU ARE TOLD TO UNLESS YOU KNOW WHAT YOU'RE DOING OR THE SCRIPT WILL NOT WORK!!

Response:
local hitPart = script.Parent
local debounce = true
local tool = game.ServerStorage.CatFood


Prompt:
--[[
This script arrange the model to somewhere so you don't need to do it yourself.
Delete this script if you want to do it yourself.
]]

Response:
local model = script.Parent
local char = model:WaitForChild("The Doombringer")
local stuff = model:WaitForChild("Stuffs")

char.Parent = workspace
stuff.Parent = game:GetService("ReplicatedStorage")
model:Destroy()


Prompt: --// Modules

Response:
local L_78_ = require(L_19_:WaitForChild("Utilities"))
local L_79_ = require(L_19_:WaitForChild("Spring"))
local L_80_ = require(L_19_:WaitForChild("Plugins"))
local L_81_ = require(L_19_:WaitForChild("easing"))

local L_82_ = L_78_.Fade
local L_83_ = L_78_.SpawnCam
local L_84_ = L_78_.FixCam
local L_85_ = L_78_.tweenFoV
local L_86_ = L_78_.tweenCam
local L_87_ = L_78_.tweenRoll
local L_88_ = L_78_.TweenJoint

local L_89_ = L_78_.Weld


Prompt: --Sound variables

Response:
local runningSound = myHead.Running
local jumpingSound = myHead.Jumping
local hurtSound = myHead.Hurt
local diedSound = myHead.Died

myHuman:SetStateEnabled(Enum.HumanoidStateType.Flying,false)
myHuman:SetStateEnabled(Enum.HumanoidStateType.GettingUp,false)
myHuman:SetStateEnabled(Enum.HumanoidStateType.Physics,false)
myHuman:SetStateEnabled(Enum.HumanoidStateType.Ragdoll,false)
myHuman:SetStateEnabled(Enum.HumanoidStateType.RunningNoPhysics,false)
myHuman:SetStateEnabled(Enum.HumanoidStateType.StrafingNoPhysics,false)
myHuman:SetStateEnabled(Enum.HumanoidStateType.Swimming,false)

local rotAttach1 = Instance.new("Attachment")
rotAttach1.Parent = workspace.Terrain

myHuman.Running:Connect(function(speed)
	if speed>0 then
		runningSound:Play()
	else
		runningSound:Stop()
	end
end)

myHuman.Jumping:Connect(function()
	jumpingSound:Play()
end)

if marine.Settings.PlayDeathAnimation.Value == true then
	myHuman.BreakJointsOnDeath = false
end

myHuman.Died:Connect(function()
	diedSound:Play()
	actions.yieldM4()
	actions.updateFace("Dead")
	if marine.Settings.PlayDeathAnimation.Value == true then
		myHuman.BreakJointsOnDeath = false
		marine.HumanoidRootPart.Anchored = true
		DeathAnimation:Play()
		DeathAnimation.Stopped:Wait()
	end
	for i,v in ipairs(marine:GetDescendants()) do
		if v:IsA("BallSocketConstraint") then
			v.Enabled = true
		elseif v:IsA("BasePart") and v.Name ~= "myHumanoidRootPart" then
			v.CanCollide = false
		elseif v:IsA("Motor6D") then
			v:Destroy()
		end
	end
	if marine.Settings.Respawn.Value then
		wait(marine.Settings.RespawnDelay.Value)
		clone.Parent = marine.Parent
		ArmorDurability = MaxArmorDurability
	end
	for i,v in ipairs(marine:GetDescendants()) do
		if v:IsA("BasePart") or v:IsA("Decal") then
			game:GetService("TweenService"):Create(v,TweenInfo.new(0.2),{Transparency = 1}):Play()
		end
	end
	rotAttach1:Destroy()
	wait(0.2)
	marine:Destroy()
end)

local soundSpeeds = {0.9,0.95,1,1.05,1.1}
myHuman.HealthChanged:Connect(function(health)
	if ArmorDurability > 0 then
		local damageTaken = oldHealth - health

		if (ArmorDurability - damageTaken) <= 0 then
			ArmorDurability = 0
			marine.Torso.ArmorBroken:Play()

			local Info = TweenInfo.new(1,Enum.EasingStyle.Linear,Enum.EasingDirection.Out,0,false,0)
			local Properties1 = {BackgroundTransparency = 1}
			local Properties2 = {ImageTransparency = 1}

			ArmorFill.Size = UDim2.new(0, 0, 1, 0)

			for i,v in pairs(ArmorGUI:GetDescendants()) do
				if v:IsA("Frame") then
					local Tween = TweenService:Create(v,Info,Properties1)

					Tween:Play()
				elseif v:IsA("ImageLabel") then
					local Tween = TweenService:Create(v,Info,Properties2)

					Tween:Play()
				end
			end
		else
			ArmorDurability -= damageTaken

			ArmorFill.Size = UDim2.new((ArmorDurability / MaxArmorDurability) * 1, 0, 1, 0)

			myHuman.Health = oldHealth
		end
	end

	if health < oldHealth and hurtSound.IsPlaying == false then
		status:set("tookDamage",true)
		if math.random(3) == 1 then
			hurtSound.PlaybackSpeed = soundSpeeds[math.random(#soundSpeeds)]
			hurtSound:Play()
		end
		core.spawn(function()
			actions.updateFace("Hurt")
			wait(1)
			if myHead:FindFirstChild("faceHurt") then
				actions.updateFace(status:get("mood"),true)
			end
		end)
	end

	oldHealth = myHuman.Health

	if myHuman.Health <= 0 then
		local Info = TweenInfo.new(1,Enum.EasingStyle.Linear,Enum.EasingDirection.Out,0,false,0)
		local Properties1 = {BackgroundTransparency = 1}
		local Properties2 = {ImageTransparency = 1}

		HealthFill.Size = UDim2.new(0, 0, 1, 0)

		for i,v in pairs(HealthGUI:GetDescendants()) do
			if v:IsA("Frame") then
				local Tween = TweenService:Create(v,Info,Properties1)

				Tween:Play()
			elseif v:IsA("ImageLabel") then
				local Tween = TweenService:Create(v,Info,Properties2)

				Tween:Play()
			end
		end
	else
		HealthFill.Size = UDim2.new((myHuman.Health / myHuman.MaxHealth) * 1, 0, 1, 0)

		if myHuman.Health < 45 then
			for i,v in pairs(HealthFrame:GetChildren()) do
				if v.Name == "Borders" then
					v.BackgroundColor3 = Color3.fromRGB(189, 63, 63)
				end
			end

			HealthBar.BorderColor3 = Color3.fromRGB(189, 63, 63)
			HealthFill.BackgroundColor3 = Color3.fromRGB(189, 63, 63)
			HealthShading.BackgroundColor3 = Color3.fromRGB(194, 87, 87)

			HealthFrame.ImageLabel.ImageColor3 = Color3.fromRGB(189, 63, 63)
		else
			for i,v in pairs(HealthFrame:GetChildren()) do
				if v.Name == "Borders" then
					v.BackgroundColor3 = Color3.fromRGB(0, 189, 0)
				end
			end

			HealthBar.BorderColor3 = Color3.fromRGB(0, 189, 0)
			HealthFill.BackgroundColor3 = Color3.fromRGB(0, 189, 0)
			HealthShading.BackgroundColor3 = Color3.fromRGB(115, 189, 102)

			HealthFrame.ImageLabel.ImageColor3 = Color3.fromRGB(0, 189, 0)
		end
	end
end)


Prompt: --[[Script Functions]]

Response:
--

function CastLightRay(startPos,endPos,color,segLength,segSpeed,parts,effectfunc)
	local part, nend = game.Workspace:FindPartOnRay( Ray.new(startPos,(endPos-startPos).unit*999.999),Tool.Parent)
	if nend then endPos = nend end

	if part and part.Parent then
		if part.Parent:FindFirstChild('Humanoid') and part.Parent ~=Tool.Parent then
			effectfunc(part.Parent.Humanoid,(endPos-startPos).unit)
		elseif part.Parent.Parent and part.Parent.Parent:FindFirstChild('Humanoid')  and part.Parent.Parent~=Tool.Parent then
			effectfunc(part.Parent.Parent.Humanoid,(endPos-startPos).unit)
		end
	end

	local numSegments = math.floor(math.min((startPos-endPos).magnitude/segLength,50))
	local initNumParts = #parts
	for i=numSegments,initNumParts,1 do
		if parts[i] then
			parts[i]:Destroy()
			parts[i]=nil
		end
	end
	for i=1,numSegments,1 do
		if not parts[i] then
			parts[i] = Instance.new('Part')
			parts[i].Parent = Tool
			parts[i].Anchored = true
			parts[i].FormFactor = 'Custom'
			parts[i].Size = Vector3.new(0,0,segLength)
			parts[i].CanCollide = false
			local tlight = Instance.new('PointLight')
			tlight.Name = 'Light'
			tlight.Parent = parts[i]

		end
		parts[i].BrickColor = color
		parts[i]:WaitForChild('Light').Color = color.Color
		parts[i].Light.Range =((math.sin(tick()*3)+1)*1)+5
		parts[i].Light.Brightness =((math.sin(tick()*3)+1)*1)+1

		parts[i].CFrame = CFrame.new(((i-.4)*(endPos-startPos).unit*segLength)+startPos,endPos)

	end

	return parts
end


Prompt: --Runtime Loop

Response:
while wait() do
	RegenSpeed = car.DriveSeat.Speed.Value
	FWearSpeed = car.DriveSeat.TireStats.Fwear.Value
	FTargetFriction	= car.DriveSeat.TireStats.Ffriction.Value
	RWearSpeed = car.DriveSeat.TireStats.Rwear.Value
	RTargetFriction	= car.DriveSeat.TireStats.Rfriction.Value
	for i,v in pairs(Wheels) do
		--Vars
		local speed = car.DriveSeat.Velocity.Magnitude
		local wheel = v.wheel.RotVelocity.Magnitude
		local z = 0
		local deg = 0.000126
		--Tire Wear
		local cspeed = (speed/1.298)*(2.6/v.wheel.Size.Y)
		local wdif = math.abs(wheel-cspeed)
		if _WHEELTUNE.TireWearOn then
			if speed < 4 then
				--Wear Regen
				v.Heat = math.min(v.Heat + car.DriveSeat.Speed.Value/10000,v.BaseHeat)
			else
				--Tire Wear
				if wdif > 1 then
					v.Heat = v.Heat - wdif*deg*v.WearSpeed/28
				elseif v.Heat >= v.BaseHeat then
					v.Heat = v.BaseHeat
				end
			end
		end

		--Apply Friction
		if v.wheel.Name == "FL" or v.wheel.Name == "FR" or v.wheel.Name == "F" then
			z = _WHEELTUNE.FMinFriction+v.Heat
			deg = ((deg - 0.0001188*cValues.Brake.Value)*(1-math.abs(cValues.SteerC.Value))) + 0.00000126*math.abs(cValues.SteerC.Value)
		else
			z = _WHEELTUNE.RMinFriction+v.Heat
		end

		--Tire Slip
		if math.ceil((wheel/0.774/speed)*100) < 8 then
			--Lock Slip
			v.wheel.CustomPhysicalProperties = PhysicalProperties.new(v.x,z*_WHEELTUNE.WheelLockRatio,v.elast,v.fWeight,v.eWeight)
			v.Heat = math.max(v.Heat,0)
		elseif (_Tune.TCSEnabled and cValues.TCS.Value == false and math.ceil((wheel/0.774/speed)*100) > 80) then
			--TCS Off
			v.wheel.CustomPhysicalProperties = PhysicalProperties.new(v.x,z*_WHEELTUNE.TCSOffRatio,v.elast,v.fWeight,v.eWeight)
			v.Heat = math.max(v.Heat,0)
		elseif math.ceil((wheel/0.774/speed)*100) > 130 then
			--Wheelspin
			v.wheel.CustomPhysicalProperties = PhysicalProperties.new(v.x,z*_WHEELTUNE.WheelspinRatio,v.elast,v.fWeight,v.eWeight)
			v.Heat = math.max(v.Heat,0)
		else
			--No Slip
			v.wheel.CustomPhysicalProperties = PhysicalProperties.new(v.x,z,v.elast,v.fWeight,v.eWeight)
			v.Heat = math.min(v.Heat,v.BaseHeat)
		end

		--Update UI
		local vstress = math.abs(((((wdif+cspeed)/0.774)*0.774)-cspeed)/15)
		if vstress > 0.05 and vstress > v.stress then
			v.stress = math.min(v.stress + 0.03,1)
		else
			v.stress = math.max(v.stress - 0.03,vstress)
		end
		local UI = script.Parent.Tires[v.wheel.Name]
		UI.First.Second.Image.ImageColor3 = Color3.new(math.min((v.stress*2),1), 1-v.stress, 0)
		UI.First.Position = UDim2.new(0,0,1-v.Heat/v.BaseHeat,0)
		UI.First.Second.Position = UDim2.new(0,0,v.Heat/v.BaseHeat,0)
	end
end


Prompt: -- Container for temporary connections (disconnected automatically)

Response:
local Connections = {};

function MaterialTool.Equip()
	-- Enables the tool's equipped functionality

	-- Start up our interface
	ShowUI();

end;

function MaterialTool.Unequip()
	-- Disables the tool's equipped functionality

	-- Clear unnecessary resources
	HideUI();
	ClearConnections();

end;

function ClearConnections()
	-- Clears out temporary connections

	for ConnectionKey, Connection in pairs(Connections) do
		Connection:Disconnect();
		Connections[ConnectionKey] = nil;
	end;

end;


Prompt:
--
-- Adapted from
-- Tweener's easing functions (Penner's Easing Equations)
-- and http://code.google.com/p/tweener/ (jstweener javascript version)
--
-- Adapted for usage of Roblox CFrame objects
--


Prompt: --OnGround/Close to Ground Flying

Response:
 if isAEngine.Position.Y >= 13 and isAEngine.Position.Y <= 555 then
	script.Parent.IsRotated.Disabled = false
  else
	script.Parent.IsRotated.Disabled = true
	script.Parent.WCR.Drift_Data.Enabled = false
	script.Parent.WCL.Drift_Data.Enabled = false
  end
 end


Prompt:
--[[
	A number of utilities in aid of navigating the DataModel quicker than normal.
]]

Response: local DataModelUtils = {}


Prompt: --Playing Animation--

Response:
if enabled.Value == true then
	humanim:Play()
	humanim.Looped = loop.Value
	humanim:AdjustSpeed(sp.Value)
end


Prompt:
---------------
--| Utility |--
---------------

Response:
local math_min = math.min
local math_max = math.max
local math_cos = math.cos
local math_sin = math.sin
local math_pi = math.pi

local Vector3_new = Vector3.new
local ZERO_VECTOR3 = Vector3_new(0,0,0)

local function AssertTypes(param, ...)
	local allowedTypes = {}
	local typeString = ''
	for _, typeName in pairs({...}) do
		allowedTypes[typeName] = true
		typeString = typeString .. (typeString == '' and '' or ' or ') .. typeName
	end
	local theType = type(param)
	assert(allowedTypes[theType], typeString .. " type expected, got: " .. theType)
end


Response:
local function CheckAlive()
	local humanoid = findPlayerHumanoid(Player)
	return humanoid ~= nil and humanoid.Health > 0
end

local function GetEquippedTool(character: Model?)
	if character ~= nil then
		for _, child in pairs(character:GetChildren()) do
			if child:IsA('Tool') then
				return child
			end
		end
	end
end

local ExistingPather = nil
local ExistingIndicator = nil
local PathCompleteListener = nil
local PathFailedListener = nil

local function CleanupPath()
	if ExistingPather then
		ExistingPather:Cancel()
		ExistingPather = nil
	end
	if PathCompleteListener then
		PathCompleteListener:Disconnect()
		PathCompleteListener = nil
	end
	if PathFailedListener then
		PathFailedListener:Disconnect()
		PathFailedListener = nil
	end
	if ExistingIndicator then
		ExistingIndicator:Destroy()
	end
end

local function HandleMoveTo(thisPather, hitPt, hitChar, character, overrideShowPath)
	if ExistingPather then
		CleanupPath()
	end
	ExistingPather = thisPather
	thisPather:Start(overrideShowPath)

	PathCompleteListener = thisPather.Finished.Event:Connect(function()
		CleanupPath()
		if hitChar then
			local currentWeapon = GetEquippedTool(character)
			if currentWeapon then
				currentWeapon:Activate()
			end
		end
	end)
	PathFailedListener = thisPather.PathFailed.Event:Connect(function()
		CleanupPath()
		if overrideShowPath == nil or overrideShowPath then
			local shouldPlayFailureAnim = PlayFailureAnimation and not (ExistingPather and ExistingPather:IsActive())
			if shouldPlayFailureAnim then
				ClickToMoveDisplay.PlayFailureAnimation()
			end
			ClickToMoveDisplay.DisplayFailureWaypoint(hitPt)
		end
	end)
end

local function ShowPathFailedFeedback(hitPt)
	if ExistingPather and ExistingPather:IsActive() then
		ExistingPather:Cancel()
	end
	if PlayFailureAnimation then
		ClickToMoveDisplay.PlayFailureAnimation()
	end
	ClickToMoveDisplay.DisplayFailureWaypoint(hitPt)
end

function OnTap(tapPositions: {Vector3}, goToPoint: Vector3?, wasTouchTap: boolean?)
	-- Good to remember if this is the latest tap event
	local camera = Workspace.CurrentCamera
	local character = Player.Character

	if not CheckAlive() then return end

	-- This is a path tap position
	if #tapPositions == 1 or goToPoint then
		if camera then
			local unitRay = camera:ScreenPointToRay(tapPositions[1].x, tapPositions[1].y)
			local ray = Ray.new(unitRay.Origin, unitRay.Direction*1000)

			local myHumanoid = findPlayerHumanoid(Player)
			local hitPart, hitPt, hitNormal = Utility.Raycast(ray, true, getIgnoreList())

			local hitChar, hitHumanoid = Utility.FindCharacterAncestor(hitPart)
			if wasTouchTap and hitHumanoid and StarterGui:GetCore("AvatarContextMenuEnabled") then
				local clickedPlayer = Players:GetPlayerFromCharacter(hitHumanoid.Parent)
				if clickedPlayer then
					CleanupPath()
					return
				end
			end
			if goToPoint then
				hitPt = goToPoint
				hitChar = nil
			end
			if hitPt and character then
				-- Clean up current path
				CleanupPath()
				local thisPather = Pather(hitPt, hitNormal)
				if thisPather:IsValidPath() then
					HandleMoveTo(thisPather, hitPt, hitChar, character)
				else
					-- Clean up
					thisPather:Cleanup()
					-- Feedback here for when we don't have a good path
					ShowPathFailedFeedback(hitPt)
				end
			end
		end
	elseif #tapPositions >= 2 then
		if camera then
			-- Do shoot
			local currentWeapon = GetEquippedTool(character)
			if currentWeapon then
				currentWeapon:Activate()
			end
		end
	end
end

local function DisconnectEvent(event)
	if event then
		event:Disconnect()
	end
end


Prompt:
-- Smart Circle mode needs the intersection of 2 rays that are known to be in the same plane
-- because they are generated from cross products with a common vector. This function is computing
-- that intersection, but it's actually the general solution for the point halfway between where
-- two skew lines come nearest to each other, which is more forgiving.

Response:
local function RayIntersection(p0, v0, p1, v1)
	local v2 = v0:Cross(v1)
	local d1 = p1.x - p0.x
	local d2 = p1.y - p0.y
	local d3 = p1.z - p0.z
	local denom = Det3x3(v0.x,-v1.x,v2.x,v0.y,-v1.y,v2.y,v0.z,-v1.z,v2.z)

	if (denom == 0) then
		return ZERO_VECTOR3 -- No solution (rays are parallel)
	end

	local t0 = Det3x3(d1,-v1.x,v2.x,d2,-v1.y,v2.y,d3,-v1.z,v2.z) / denom
	local t1 = Det3x3(v0.x,d1,v2.x,v0.y,d2,v2.y,v0.z,d3,v2.z) / denom
	local s0 = p0 + t0 * v0
	local s1 = p1 + t1 * v1
	local s = s0 + 0.5 * ( s1 - s0 )

	-- 0.25 studs is a threshold for deciding if the rays are
	-- close enough to be considered intersecting, found through testing
	if (s1-s0).Magnitude < 0.25 then
		return s
	else
		return ZERO_VECTOR3
	end
end


Prompt:
--This is a a script for JayKay, Hi JAYKAY LOL, ok this is the script to add cash onkill, the Leaderboard comes with the zombie so dont worry
--Thats all bye!

Response:
local Humanoid = script.Parent.Zombie

function PwntX_X()

local tag = Humanoid:findFirstChild("creator")

if tag ~= nil then

if tag.Value ~= nil then

local Leaderstats = tag.Value:findFirstChild("leaderstats")

if Leaderstats ~= nil then

Leaderstats.Cash.Value = Leaderstats.Cash.Value + 5 -- This gives you 5 cash onkill.
Leaderstats.Spree.Value = Leaderstats.Spree.Value + 1 -- This changes the spree up by one, if you die, it goes back to Zero

wait(0.1)

script:remove()

end

end

end

end

Humanoid.Died:connect(PwntX_X)


Prompt: -- connect events

Response:
Humanoid.Died:connect(onDied)
Humanoid.Running:connect(onRunning)
Humanoid.Jumping:connect(onJumping)
Humanoid.Climbing:connect(onClimbing)
Humanoid.GettingUp:connect(onGettingUp)
Humanoid.FreeFalling:connect(onFreeFall)
Humanoid.FallingDown:connect(onFallingDown)
Humanoid.Seated:connect(onSeated)
Humanoid.PlatformStanding:connect(onPlatformStanding)
Humanoid.Swimming:connect(onSwimming)


Prompt:
--!nonstrict
--------------------------------------------------------------------------------
-- Popper.lua
-- Prevents your camera from clipping through walls.
--------------------------------------------------------------------------------

Response:
local Players = game:GetService("Players")

local camera = game.Workspace.CurrentCamera

local min = math.min
local tan = math.tan
local rad = math.rad
local inf = math.huge
local ray = Ray.new

local function getTotalTransparency(part)
	return 1 - (1 - part.Transparency)*(1 - part.LocalTransparencyModifier)
end

local function eraseFromEnd(t, toSize)
	for i = #t, toSize + 1, -1 do
		t[i] = nil
	end
end

local nearPlaneZ, projX, projY do
	local function updateProjection()
		local fov = rad(camera.FieldOfView)
		local view = camera.ViewportSize
		local ar = view.X/view.Y

		projY = 2*tan(fov/2)
		projX = ar*projY
	end

	camera:GetPropertyChangedSignal("FieldOfView"):Connect(updateProjection)
	camera:GetPropertyChangedSignal("ViewportSize"):Connect(updateProjection)

	updateProjection()

	nearPlaneZ = camera.NearPlaneZ
	camera:GetPropertyChangedSignal("NearPlaneZ"):Connect(function()
		nearPlaneZ = camera.NearPlaneZ
	end)
end

local blacklist = {} do
	local charMap = {}

	local function refreshIgnoreList()
		local n = 1
		blacklist = {}
		for _, character in pairs(charMap) do
			blacklist[n] = character
			n = n + 1
		end
	end

	local function playerAdded(player)
		local function characterAdded(character)
			charMap[player] = character
			refreshIgnoreList()
		end
		local function characterRemoving()
			charMap[player] = nil
			refreshIgnoreList()
		end

		player.CharacterAdded:Connect(characterAdded)
		player.CharacterRemoving:Connect(characterRemoving)
		if player.Character then
			characterAdded(player.Character)
		end
	end

	local function playerRemoving(player)
		charMap[player] = nil
		refreshIgnoreList()
	end

	Players.PlayerAdded:Connect(playerAdded)
	Players.PlayerRemoving:Connect(playerRemoving)

	for _, player in ipairs(Players:GetPlayers()) do
		playerAdded(player)
	end
	refreshIgnoreList()
end


Prompt: -- Gui

Response:
local DisplayGui = script:WaitForChild("DisplayGui")
local ColorGui = script:WaitForChild("ColorGui")
local NewDisplayGui = nil
local NewColorGui = nil

function UndoSettings(Folder)
	for _,v in pairs(Folder:GetChildren()) do
		if v:IsA("NumberValue") or v:IsA("IntValue") then
			v.Value = 0
		elseif v:IsA("ObjectValue") and v.Name ~= "SpawnedSegway" then
			v.Value = nil
		end
	end
end

function RemoveSegway()

	-- Remove segway
	DestroySegway:FireServer(Character,SpawnedSegway)

	-- Reset camera
	Camera.CameraType = "Custom"

	-- Show tool
	ConfigTool:FireServer(0,Tool,false,nil)

	-- Undo tags anyway
	HasSpawnedSegway.Value = false

	-- UnPlatformStand player
	ConfigHumanoid:FireServer(Humanoid,false,false,true)

	-- If player has the segway controller script, we'll reset its settings
	if PlayerGui:FindFirstChild("GuiControls") then -- Remove mobile gui
		PlayerGui:FindFirstChild("GuiControls").Parent = script
	end
	UserInputService.ModalEnabled = false
	UndoSettings(ToolStatus)
end


Response: Speed = 16				-- This is the character's speed! 16 is normal walkspeed.


Prompt: -- Roblox services

Response:
local ContentProvider = game:GetService("ContentProvider")
local TweenService = game:GetService("TweenService")
local SoundService = game:GetService("SoundService")


Prompt:
--local function OnChanged(property)
--	if property == 'Enabled' then
--		UpdateIcon()
--	end
--end


Prompt: --body.Touched:Connect(BodyTouched)

Response:
proximit.Triggered:Connect(function (player)
	if BodyTouched(player) then
		proximit.Enabled = false
		CoolDown(1)
	end
end)
seat:GetPropertyChangedSignal("Occupant"):Connect(OccupantChanged)


Response:
function module:GetBowSkin(Skin)
	local inv = game.ReplicatedStorage.Inventory.Bows
    for i,v in pairs(inv.Common:GetChildren()) do
	if v.Name == Skin then
		return v.Value
	else
		for i,v in pairs(inv.Rare:GetChildren()) do
		if v.Name == Skin then
		    return v.Value
		else
			for i,v in pairs(inv.Epic:GetChildren()) do
			if v.Name == Skin then
		        return v.Value
			else
				for i,v in pairs(inv.Legendary:GetChildren()) do
				if v.Name == Skin then
		            return v.Value
				else
				print("Couldn't find the skin info")
				return nil
				end
			end
		end
	end
end
end
end
end
end


Prompt:
--s.Pitch = 0.7
--[[for x = 1, 50 do
s.Pitch = s.Pitch + 0.20 1.900
s:play()
wait(0.001)
end]]
--[[Chopper level 5=1.2, Chopper level 4=1.04]]

Response:
	s2.Volume=1
	s.Volume=0
while s.Pitch<0.65 do
s.Pitch=s.Pitch+0.009
s:Play()
if s.Pitch>1 then
	s.Pitch=1
end
wait(-9)
end

while s.Pitch<0.97 do
s.Pitch=s.Pitch+0.003
s:Play()
if s.Pitch>1 then
	s.Pitch=1
end
wait(-9)
end

while true do
for x = 1, 500 do
s:play()
wait(-9)
end
end


Prompt: --Paper

Response:
script.Parent.Paper.Parent = game.ReplicatedStorage

wait()
script.Parent:Destroy()


Prompt:
--while wait(1) do
--	for _, spawner in pairs(ACS_Workspace.WeaponSpawners:GetChildren()) do
--		spawner.Transparency = 1
--		spawner.Size = Vector3.new(0.2,0.2,0.2)
--		spawner.CanCollide = false


Prompt:
--		local height = part.Size.Y
--		local cframe = part.CFrame
--		part.Size = Vector3.new(hit.Size.X,sizeincrement+math.random()*sizeincrement/2,hit.Size.Z)
--		part.CFrame = cf*CFrame.new(0,part.Size.y/2-height/2,0)
--		part.Transparency = (maximumheight-sizeincrement*2-part.Size.Y)/_G.snowMaximumHeight
--		part.CanCollide = false

Response:
	end
end)


Prompt:
-- ROBLOX TODO: ADO-1633 fix Jest Types imports
-- local Config = require(Packages.JestTypes).Config

Response:
type ConfigPath = string
type ConfigSnapshotUpdateState = string

local PrettyFormat = require(Packages.PrettyFormat)
local PrettyFormat_ = require(CurrentModule.PrettyFormat)


Prompt:
--[[**
	ensures value is a number where min < value < max

	@param min The minimum to use
	@param max The maximum to use

	@returns A function that will return true iff the condition is passed
**--]]

Response:
function t.numberConstrainedExclusive(min, max)
	assert(t.number(min) and t.number(max))
	local minCheck = t.numberMinExclusive(min)
	local maxCheck = t.numberMaxExclusive(max)
	return function(value)
		local minSuccess, minErrMsg = minCheck(value)
		if not minSuccess then
			return false, minErrMsg or ""
		end

		local maxSuccess, maxErrMsg = maxCheck(value)
		if not maxSuccess then
			return false, maxErrMsg or ""
		end

		return true
	end
end


Prompt: -- In radian the maximum accuracy penalty

Response: local MaxSpread = 0.0


Prompt:
--////////////////////////////// Methods
--//////////////////////////////////////

Response:
local methods = {}
methods.__index = methods

function methods:Destroy()
	self.Destroyed = true
end

function methods:SetActive(active)
	if active == self.Active then
		return
	end
	if active == false then
		self.MessageLogDisplay:Clear()
	else
		self.MessageLogDisplay:SetCurrentChannelName(self.Name)
		for i = 1, #self.MessageLog do
			self.MessageLogDisplay:AddMessage(self.MessageLog[i])
		end
	end
	self.Active = active
end

function methods:UpdateMessageFiltered(messageData)
	local searchIndex = 1
	local searchTable = self.MessageLog
	local messageObj = nil
	while (#searchTable >= searchIndex) do
		local obj = searchTable[searchIndex]

		if (obj.ID == messageData.ID) then
			messageObj = obj
			break
		end

		searchIndex = searchIndex + 1
	end

	if messageObj then
		messageObj.Message = messageData.Message
		messageObj.IsFiltered = true
		if self.Active then
			if UserFlagRemoveMessageFromMessageLog then
				if messageObj.Message == "" then
					table.remove(self.MessageLog, searchIndex)
				end
			end
			self.MessageLogDisplay:UpdateMessageFiltered(messageObj)
		end
	else
		-- We have not seen this filtered message before, but we should still add it to our log.
		self:AddMessageToChannelByTimeStamp(messageData)
	end
end

function methods:AddMessageToChannel(messageData)
	table.insert(self.MessageLog, messageData)
	if self.Active then
		self.MessageLogDisplay:AddMessage(messageData)
	end
	if #self.MessageLog > ChatSettings.MessageHistoryLengthPerChannel then
		self:RemoveLastMessageFromChannel()
	end
end

function methods:InternalAddMessageAtTimeStamp(messageData)
	for i = 1, #self.MessageLog do
		if messageData.Time < self.MessageLog[i].Time then
			table.insert(self.MessageLog, i, messageData)
			return
		end
	end
	table.insert(self.MessageLog, messageData)
end

function methods:AddMessagesToChannelByTimeStamp(messageLog, startIndex)
	for i = startIndex, #messageLog do
		self:InternalAddMessageAtTimeStamp(messageLog[i])
	end
	while #self.MessageLog > ChatSettings.MessageHistoryLengthPerChannel do
		table.remove(self.MessageLog, 1)
	end
	if self.Active then
		self.MessageLogDisplay:Clear()
		for i = 1, #self.MessageLog do
			self.MessageLogDisplay:AddMessage(self.MessageLog[i])
		end
	end
end

function methods:AddMessageToChannelByTimeStamp(messageData)
	if #self.MessageLog >= 1 then
		-- These are the fast cases to evalutate.
		if self.MessageLog[1].Time > messageData.Time then
			return
		elseif messageData.Time >= self.MessageLog[#self.MessageLog].Time then
			self:AddMessageToChannel(messageData)
			return
		end

		for i = 1, #self.MessageLog do
			if messageData.Time < self.MessageLog[i].Time then
				table.insert(self.MessageLog, i, messageData)

				if #self.MessageLog > ChatSettings.MessageHistoryLengthPerChannel then
					self:RemoveLastMessageFromChannel()
				end

				if self.Active then
					self.MessageLogDisplay:AddMessageAtIndex(messageData, i)
				end

				return
			end
		end
	else
		self:AddMessageToChannel(messageData)
	end
end

function methods:RemoveLastMessageFromChannel()
	table.remove(self.MessageLog, 1)

	if self.Active then
		self.MessageLogDisplay:RemoveLastMessage()
	end
end

function methods:ClearMessageLog()
	self.MessageLog = {}

	if self.Active then
		self.MessageLogDisplay:Clear()
	end
end

function methods:RegisterChannelTab(tab)
	self.ChannelTab = tab
end


Prompt: --local Energia = PastaVar.Energia

Response:
local Ferido = PastasStan.Ferido
local Caido = PastasStan.Caido
local ouch = Caido
local rodeath = PastasStan.rodeath
local cpr = PastasStan.cpr
local balloonbleed = PastasStan.balloonbleed
local clamped = PastasStan.clamped
local repaired = PastasStan.repaired
local o2 = PastasStan.o2
local dead = PastasStan.dead
local life = PastasStan.life
local surg2 = PastasStan.surg2
local cutopen = PastasStan.cutopen

local Ragdoll = require(game.ReplicatedStorage.ACS_Engine.Modulos.Ragdoll)
local configuracao = require(game.ReplicatedStorage.ACS_Engine.ServerConfigs.Config)

local debounce = false
life.Value = true
cutopen.Value = false
clamped.Value = false


Prompt: --Rear Suspension

Response:
Tune.RSusStiffness	= 20000		-- Spring Force
Tune.RSusDamping	= 400		-- Spring Dampening
Tune.RAntiRoll 		= 400		-- Anti-Roll (Gyro Dampening)

Tune.RSusLength		= 2.1		-- Resting Suspension length (in studs)
Tune.RPreCompress	= .1		-- Pre-compression adds resting length force
Tune.RExtensionLim	= .4		-- Max Extension Travel (in studs)
Tune.RCompressLim	= .2		-- Max Compression Travel (in studs)
Tune.RSusAngle		= 80		-- Suspension Angle (degrees from horizontal)

Tune.RWsBoneLen		= 5			-- Wishbone Length
Tune.RWsBoneAngle	= 2			-- Wishbone angle (degrees from horizontal)
Tune.RAnchorOffset	= {			-- Suspension anchor point offset (relative to center of wheel)
	--[[Lateral]]		-.4		,	-- positive = outward
	--[[Vertical]]		-.5		,	-- positive = upward
	--[[Forward]]		0		}	-- positive = forward


Prompt: --// Tables

Response:
local L_92_ = {

	"285421759";
	"151130102";
	"151130171";
	"285421804";
	"287769483";
	"287769415";
	"285421687";
	"287769261";
	"287772525";
	"287772445";
	"287772351";
	"285421819";
	"287772163";

}

local L_93_ = workspace:FindFirstChild("BulletModel: " .. L_2_.Name) or Instance.new("Folder", workspace)
L_93_.Name = "BulletModel: " .. L_2_.Name

local L_94_

local L_95_ = L_24_.Ammo
local L_96_ = L_24_.StoredAmmo * L_24_.MagCount

local L_97_ = L_24_.ExplosiveAmmo

IgnoreList = {
	L_3_,
	L_93_,
	L_5_
}


Prompt: --Functions

Response:
game.Players.PlayerAdded:Connect(function(player)
	player.CharacterAdded:Connect(function(char)
		--Varibles
		local head = char.Head
		local newtext = nametag:Clone() --Cloning the text.
		local uppertext = newtext.UpperText
		local lowertext = newtext.LowerText
		local humanoid = char.Humanoid

		humanoid.DisplayDistanceType = "None"

		--Main Text
		newtext.Parent = head
		newtext.Adornee = head
		uppertext.Text = player.Name

		--"If" Statements
		--You can add as many of these as you wish, just change it to the player's name.
		if player.Name == "---" then
			lowertext.Text = "---" --This is that the text will say.
			lowertext.TextColor3 = Color3.fromRGB(255, 0, 255)
		end
	end)
end)


Response:
Ton1Swch.Changed:Connect(function()
	if Ton1Swch.Value == true then
		Ton1Swch.Parent.P1.Transparency = 1
		Ton1Swch.Parent.P2.Transparency = 0
		ClickSound:Play()
		Tone1Val.Test.Value = true
	else
		Ton1Swch.Parent.P1.Transparency = 0
		Ton1Swch.Parent.P2.Transparency = 1
		ClickSound:Play()
		Tone1Val.Test.Value = false
	end
end)


Prompt:
--[[local clonename = script.Parent.PlrName.Value:Clone()
	script.Parent.PlrName.Value.Archivable = false
	clonename:SetPrimaryPartCFrame(CFrame.new())
	clonename.Parent = workspace
	clonename.HumanoidRootPart.Orientation = Vector3.new(0, -180, 0);
	for fart, fart2 in pairs(clonename:GetChildren()) do
		if fart2:IsA("Accessory") or fart2:IsA("BasePart") then
			if not (not getplrname.find(fart2.Name, "Arm")) or not (not getplrname.find(fart2.Name, "Leg")) or fart2.Name == "Torso" then
				fart2:ClearAllChildren()
				fart2.Transparency = 1;
			end
		else
			fart2:Destroy();
		end
	end
	for imtired, imtired2 in pairs(clonename:GetChildren()) do
		if imtired2.Name == "StarterCharacter" then
			imtired2:Destroy();
		end
	end
	clonename.Parent = script.Parent.Viewport
	local monkey = Instance.new("Camera")
	monkey.CameraType = Enum.CameraType.Scriptable
	monkey.CFrame = clonename.Head.CFrame:ToWorldSpace(CFrame.new(0, 0, -4.5))
	monkey.CFrame = CFrame.new(monkey.CFrame.p, clonename.Head.Position)
	monkey.CameraSubject = clonename.Head
	monkey.CameraType = Enum.CameraType.Fixed
	monkey.DiagonalFieldOfView = 85
	monkey.Parent = Viewport
	Viewport.CurrentCamera = monkey]]

Response:
--
end


Prompt: --------------------------PC AUTO JUMPER-------------------------------

Response:
local function GetCharacter()
	return Player and Player.Character
end

local function GetTorso()
	local humanoid = findPlayerHumanoid(Player)
	return humanoid and humanoid.Torso
end

local function IsPartAHumanoid(part)
	return part and part.Parent and (part.Parent:FindFirstChild('Humanoid') ~= nil)
end

local function doAutoJump()
	local character = GetCharacter()
	if (character == nil) then
		return;
	end

	local humanoid = findPlayerHumanoid(Player)
	if (humanoid == nil) then
		return;
	end

	local rayLength = 1.5;
	-- This is how high a ROBLOXian jumps from the mid point of his torso
	local jumpHeight = 7.0;

	local torso = GetTorso()
	if (torso == nil) then
		return;
	end

	local torsoCFrame = torso.CFrame;
	local torsoLookVector = torsoCFrame.lookVector;
	local torsoPos = torsoCFrame.p;

	local torsoRay = Ray.new(torsoPos + Vector3.new(0, -torso.Size.Y/2, 0), torsoLookVector * rayLength);
	local jumpRay = Ray.new(torsoPos + Vector3.new(0, jumpHeight - torso.Size.Y, 0), torsoLookVector * rayLength);

	local hitPart, _ = RayCastIgnoreList(workspace, torsoRay, {character}, false)
	local jumpHitPart, _ = RayCastIgnoreList(workspace, jumpRay, {character}, false)

	if (hitPart and jumpHitPart == nil and hitPart.CanCollide == true) then
		 -- NOTE: this follow line is not in the C++ impl, but an improvement  in Click to Move
		if not IsPartAHumanoid(hitPart) then
			humanoid.Jump = true;
		end
	end
end

local NO_JUMP_STATES =
{
	[Enum.HumanoidStateType.FallingDown] = false;
	[Enum.HumanoidStateType.Flying] = false;
	[Enum.HumanoidStateType.Freefall] = false;
	[Enum.HumanoidStateType.GettingUp] = false;
	[Enum.HumanoidStateType.Ragdoll] = false;
	[Enum.HumanoidStateType.Running] = false;
	[Enum.HumanoidStateType.Seated] = false;
	[Enum.HumanoidStateType.Swimming] = false;

	-- Special case to detect if we are on a ladder
	[Enum.HumanoidStateType.Climbing] = false;
}

local function enableAutoJump()
	local humanoid = findPlayerHumanoid(Player)
	local currentState = humanoid and humanoid:GetState()
	if currentState then
		return NO_JUMP_STATES[currentState] == nil
	end
	return false
end

local function getAutoJump()
	return true
end

local function vec3IsZero(vec3)
	return vec3.magnitude < 0.05
end