Prompt: --// All global vars will be wiped/replaced except script

Response:
return function(data)
	local gui = script.Parent.Parent--client.UI.Prepare(script.Parent.Parent)
	local frame = gui.Frame
	local frame2 = frame.Frame
	local msg = frame2.Message
	local ttl = frame2.Title

	local gIndex = data.gIndex
	local gTable = data.gTable

	local title = data.Title
	local message = data.Message
	local scroll = data.Scroll
	local tim = data.Time

	local gone = false

	if not data.Message or not data.Title then gTable:Destroy() end

	ttl.Text = title
	msg.Text = message
	ttl.TextTransparency = 1
	msg.TextTransparency = 1
	ttl.TextStrokeTransparency = 1
	msg.TextStrokeTransparency = 1
	frame.BackgroundTransparency = 1

	local log  = {
		Type = "Small Screen Message";
		Title = title;
		Message = message;
		Icon = "rbxassetid://7501175708";
		Time = os.date("%X");
		Function = nil;
	}

	table.insert(client.Variables.CommunicationsHistory, log)
	service.Events.CommsPanel:Fire(log)

	local fadeSteps = 10
	local blurSize = 10
	local textFade = 0.1
	local strokeFade = 0.5
	local frameFade = 0.3

	local blurStep = blurSize/fadeSteps
	local frameStep = frameFade/fadeSteps
	local textStep = 0.1
	local strokeStep = 0.1

	local function fadeIn()
		gTable:Ready()
		for i = 1,fadeSteps do
			if msg.TextTransparency>textFade then
				msg.TextTransparency = msg.TextTransparency-textStep
				ttl.TextTransparency = ttl.TextTransparency-textStep
			end
			if msg.TextStrokeTransparency>strokeFade then
				msg.TextStrokeTransparency = msg.TextStrokeTransparency-strokeStep
				ttl.TextStrokeTransparency = ttl.TextStrokeTransparency-strokeStep
			end
			if frame.BackgroundTransparency>frameFade then
				frame.BackgroundTransparency = frame.BackgroundTransparency-frameStep
				frame2.BackgroundTransparency = frame.BackgroundTransparency
			end
			service.Wait("Stepped")
		end
	end

	local function fadeOut()
		if not gone then
			gone = true
			for i = 1,fadeSteps do
				if msg.TextTransparency<1 then
					msg.TextTransparency = msg.TextTransparency+textStep
					ttl.TextTransparency = ttl.TextTransparency+textStep
				end
				if msg.TextStrokeTransparency<1 then
					msg.TextStrokeTransparency = msg.TextStrokeTransparency+strokeStep
					ttl.TextStrokeTransparency = ttl.TextStrokeTransparency+strokeStep
				end
				if frame.BackgroundTransparency<1 then
					frame.BackgroundTransparency = frame.BackgroundTransparency+frameStep
					frame2.BackgroundTransparency = frame.BackgroundTransparency
				end
				service.Wait("Stepped")
			end
			service.UnWrap(gui):Destroy()
		end
	end

	gTable.CustomDestroy = function()
		fadeOut()
	end

	fadeIn()
	if not tim then
		local _,time = message:gsub(" ","")
		time = math.clamp(time/2,4,11)+1
		wait(time)
	else
		wait(tim)
	end
	if not gone then
		fadeOut()
	end
end


Prompt:
--	RightShoulder.MaxVelocity = 0.025
--	LeftShoulder.MaxVelocity = 0.025
--	RightShoulder.DesiredAngle = (math.pi / 2)
--	LeftShoulder.DesiredAngle = -(math.pi / 2)
--	RightHip.DesiredAngle = 1
--	LeftHip.DesiredAngle = -1

Response:
end

function Move(Time)
	local LimbAmplitude
	local LimbFrequency
	local NeckAmplitude
	local NeckFrequency
	local NeckDesiredAngle

	if (Pose == "Jumping") then
		MoveJump()
		return
	elseif (Pose == "FreeFall") then
		MoveFreeFall()
		return
	elseif (Pose == "Seated") then
		MoveSit()
		return
	end

	local ClimbFudge = 0

	if (Pose == "Running") then


Prompt: --Rears--

Response:
for _,v in pairs({

}) do

	local open1=false
	for _,a in pairs(v.Parts:GetChildren()) do
		if a.Name=="Handle" then
			local CL = Instance.new("ClickDetector",a)
			CL.MaxActivationDistance = 8.5
			CL.MouseClick:connect(function()
				open1 = not open1
				if open1 then
					a.DoorOpen:Play()
					wait(0.2)
					a.Parent.Parent.sHinge1.W.DesiredAngle = 1.5
					a.Parent.Parent.sHinge2.W.DesiredAngle = -3
					a.Parent.Parent.sHinge3.W.DesiredAngle = -1.5
					a.Parent.Parent.sHinge4.W.DesiredAngle = 3
				else
					a.Parent.Parent.sHinge1.W.DesiredAngle = 0
					a.Parent.Parent.sHinge2.W.DesiredAngle = 0
					a.Parent.Parent.sHinge3.W.DesiredAngle = 0
					a.Parent.Parent.sHinge4.W.DesiredAngle = 0
					a.DoorClose:Play()
					wait(1.1)
					a.Parent.Parent.oHinge1.W.DesiredAngle = 0
					a.Parent.Parent.oHinge2.W.DesiredAngle = 0
				end
			end)
		end
	end
end


Prompt: --		print(#labelAs, #labelBs)

Response:
		local start = tick()

		while wait() do
			local alpha = math.min((tick() - start)/speed, 1)

			for index,labelA in pairs(labelAs) do
				labelA.Position = UDim2.new(1*index + alpha, 0, 0, 0)
			end

			labelM.Position = UDim2.new(alpha, 0, 0, 0)

			for index,labelB in pairs(labelBs) do
				labelB.Position = UDim2.new(-1*index + alpha, 0, 0, 0)
			end

			if alpha >= 1 then
				break
			end
		end
	end
end


Prompt: --UpdateTime()

Response:
while true do
UpdateTime()
game.Lighting.TimeOfDay = hour.Value..":"..min.Value..":"..sec.Value
script.Parent.Name = hour.Value.." : "..min.Value.." : "..sec.Value.. " Day " ..day.Value.. " Month " ..month.Value.. " Year " ..year.Value
wait(1)
end


Prompt: --// Functions

Response:
function MakeFakeArms()
	Arms = Instance.new("Model")
	Arms.Name = "Arms"
	Arms.Parent = L_5_

	local L_171_ = Instance.new("Humanoid")
	L_171_.MaxHealth = 0
	L_171_.Health = 0
	L_171_.Name = ""
	L_171_.Parent = Arms

	if L_3_:FindFirstChild("Shirt") then
		local L_176_ = L_3_:FindFirstChild("Shirt"):clone()
		L_176_.Parent = Arms
	end

	local L_172_ = L_3_:FindFirstChild("Right Arm"):clone()
	for L_177_forvar1, L_178_forvar2 in pairs(L_172_:GetChildren()) do
		if L_178_forvar2:IsA('Motor6D') then
			L_178_forvar2:Destroy()
		end
	end
	L_172_.Name = "Right Arm"
	L_172_.FormFactor = "Custom"
	L_172_.Size = Vector3.new(0.8, 2.5, 0.8)
	L_172_.Transparency = 0.0

	local L_173_ = Instance.new("Motor6D")
	L_173_.Part0 = L_172_
	L_173_.Part1 = L_3_:FindFirstChild("Right Arm")
	L_173_.C0 = CFrame.new()
	L_173_.C1 = CFrame.new()
	L_173_.Parent = L_172_
	L_172_.Parent = Arms

	local L_174_ = L_3_:FindFirstChild("Left Arm"):clone()
	L_174_.Name = "Left Arm"
	L_174_.FormFactor = "Custom"
	L_174_.Size = Vector3.new(0.8, 2.5, 0.8)
	L_174_.Transparency = 0.0

	local L_175_ = Instance.new("Motor6D")
	L_175_.Part0 = L_174_
	L_175_.Part1 = L_3_:FindFirstChild("Left Arm")
	L_175_.C0 = CFrame.new()
	L_175_.C1 = CFrame.new()
	L_175_.Parent = L_174_
	L_174_.Parent = Arms
end

function RemoveArmModel()
	if Arms then
		Arms:Destroy()
		Arms = nil
	end
end

local L_134_

function CreateShell()
	L_134_ = time()
	local L_179_ = L_1_.Shell:clone()
	if L_179_:FindFirstChild('Shell') then
		L_179_.Shell:Destroy()
	end
	L_179_.CFrame =  L_1_.Chamber.CFrame
	L_179_.Velocity = L_1_.Chamber.CFrame.lookVector * 30 + Vector3.new(0, 4, 0)
	--shell.RotVelocity = Vector3.new(-10,40,30)
	L_179_.Parent = L_100_
	L_179_.CanCollide = false
	game:GetService("Debris"):addItem(L_179_, 1)
	delay(0.5, function()
		if L_19_:FindFirstChild('ShellCasing') then
			local L_180_ = L_19_.ShellCasing:clone()
			L_180_.Parent = L_2_.PlayerGui
			L_180_:Play()
			game:GetService('Debris'):AddItem(L_180_, L_180_.TimeLength)
		end
	end)
end


Prompt:
--[[
	BaseOcclusion - Abstract base class for character occlusion control modules
	2018 Camera Update - AllYourBlox
--]]


Prompt: --[[Initialize]]

Response:
	script.Parent:WaitForChild("A-Chassis Interface")
	script.Parent:WaitForChild("Plugins")
	script.Parent:WaitForChild("README")

	local car=script.Parent.Parent
	local _Tune=require(script.Parent)

	wait(_Tune.LoadDelay)

	--Update Checker

	if _Tune.AutoUpdate then
		local newModel
		local s,m = pcall(function() newModel = game:GetService("InsertService"):LoadAsset(5181235975) end)
		if s then
			local MinorUpdate = false
			local MajorUpdate = false
			local localVersion = script.Parent["A-Chassis Interface"].Version
			local newVersion = newModel["A-Chassis 6C by Novena"]["A-Chassis Tune"]["A-Chassis Interface"].Version
			if localVersion.Value < newVersion.Value or localVersion.LastMajorUpdate.Value < newVersion.LastMajorUpdate.Value then
				if localVersion.LastMajorUpdate.Value < newVersion.LastMajorUpdate.Value then
					MajorUpdate = true
				else
					MinorUpdate = true
				end
			end
			if MajorUpdate then
				print("[AC6C]: Chassis update!"
						.."\nA major update to A-Chassis 6C has been found."
						.."\nThe changes cannot be ported due to the update."
						.."\nYou are advised to update your chassis ASAP.")
			elseif MinorUpdate then
				localVersion.Value = newVersion.Value
				print("[AC6C]: Drive script update!"
					.."\nAn update to A-Chassis' Drive script has been found."
					.."\nThe updated script will take effect next time you get in."
					.."\nYou are advised to update your chassis soon.")
				script.Parent["A-Chassis Interface"].Drive:Destroy()
				newModel["A-Chassis 6C by Novena"]["A-Chassis Tune"]["A-Chassis Interface"].Drive.Parent = script.Parent["A-Chassis Interface"]
			end
			newModel:Destroy()
		end
	end

	--Weight Scaling
	local weightScaling = _Tune.WeightScaling

	local Drive=car.Wheels:GetChildren()

	--Remove Existing Mass
	function DReduce(p)
		for i,v in pairs(p:GetChildren())do
			if v:IsA("BasePart") then
				if v.CustomPhysicalProperties == nil then v.CustomPhysicalProperties = PhysicalProperties.new(v.Material) end
				v.CustomPhysicalProperties = PhysicalProperties.new(
					0,
					v.CustomPhysicalProperties.Friction,
					v.CustomPhysicalProperties.Elasticity,
					v.CustomPhysicalProperties.FrictionWeight,
					v.CustomPhysicalProperties.ElasticityWeight
				)
				v.Massless = true --(LuaInt) but it's just this line
			end
			DReduce(v)
		end
	end
	DReduce(car)


Prompt: -- places a brick at pos and returns the position of the brick's opposite corner

Response:
function placeBrick(cf, pos, color)
	local brick = Instance.new("Part")
	brick.BrickColor = color
	brick.CFrame = cf * CFrame.new(pos + brick.Size / 2)
	script.Parent.BrickCleanup:Clone().Parent = brick -- attach cleanup script to this brick
	brick.BrickCleanup.Disabled = false
	brick.Parent = game.Workspace
	brick:MakeJoints()
	return  brick, pos +  brick.Size
end

function buildWall(cf)

	local color = BrickColor.Random()
	local bricks = {}

	assert(wallWidth>0)
	local y = 0
	while y < wallHeight do
		local p
		local x = -wallWidth/2
		while x < wallWidth/2 do
			local brick
			brick, p = placeBrick(cf, Vector3.new(x, y, 0), color)
			x = p.x
			table.insert(bricks, brick)
			wait(brickSpeed)
		end
		y = p.y
	end

	return bricks

end

function snap(v)
	if math.abs(v.x)>math.abs(v.z) then
		if v.x>0 then
			return Vector3.new(1,0,0)
		else
			return Vector3.new(-1,0,0)
		end
	else
		if v.z>0 then
			return Vector3.new(0,0,1)
		else
			return Vector3.new(0,0,-1)
		end
	end
end

Tool.Enabled = true
function onActivated()

	if not Tool.Enabled then
		return
	end

	Tool.Enabled = false

	local character = Tool.Parent;
	local humanoid = character:FindFirstChildOfClass("Humanoid")
	if not humanoid then
		return
	end

	local targetPos = MouseLoc:InvokeClient(game:GetService("Players"):GetPlayerFromCharacter(character))
	local lookAt = snap( (targetPos - character.Head.Position).unit )
	local cf = CFrame.new(targetPos, targetPos + lookAt)

	Tool.Handle.BuildSound:Play()

	buildWall(cf)

	wait(5)

	Tool.Enabled = true
end

Tool.Activated:Connect(onActivated)


Prompt:
--[[
	Set the current node's status to Failure and adds a message to its list of
	errors.
]]

Response:
function TestSession:setError(message)
	assert(#self.nodeStack > 0, "Attempting to set error status on empty stack")
	local last = self.nodeStack[#self.nodeStack]
	last.status = TestEnum.TestStatus.Failure
	table.insert(last.errors, message)
end


Prompt:
--This is just some simple server script that moves the object around every frame
--The kinematics module handles the rest

Response:
game["Run Service"].Heartbeat:Connect(function(deltaTime)

	part.Position = startPos + pos

	pos += vel * deltaTime

	if (pos.x > boxSize) then
		vel = Vector3.new( -math.abs(vel.x),0,vel.z)
	end
	if (pos.x < -boxSize) then
		vel = Vector3.new( math.abs(vel.x),0,vel.z)
	end
	if (pos.z > boxSize) then
		vel = Vector3.new(vel.x,0, -math.abs(vel.z))
	end
	if (pos.z < -boxSize) then
		vel = Vector3.new(vel.x,0, math.abs(vel.z))
	end

end)


Prompt: --Engine Sound stuff

Response:
local ShiftLength = 0.35
local OmegaSum = 0
local AvgOmega = 0
local Shifting = false
local ShiftStart = 0
local Gear = 1
local ShiftUp = 1.5
local ShiftDown = 0.85
local OldGear = 1
local EngineSound = script.Parent.Engine
EngineSound:Play()
local function GearRatio(Num)
	return 0.014 / (0.2*Num+ 0.08)
end

while true do
	wait()
	AvgOmega = (OmegaSum/(#Wheels) + AvgOmega)/2
	OmegaSum = 0
	for i,v in pairs(Wheels) do
		local Wheel = v.Wheel
		--Raycast to find if the wheel is touching the ground
		local OffsetVector = -Base.CFrame.UpVector*Wheel.Size.Y/1.925
		local Hit, Pos, Normal = Raycast.new(Wheel.Position, OffsetVector,script.Parent.Parent)
		--Touching
		if Hit then
			--Calculate velocity of bottom of wheel
			local Omega = -v.Wheel.CFrame:vectorToObjectSpace(Wheel.RotVelocity).X
			OmegaSum = OmegaSum + math.abs(Omega)
			local ContactVelocity = Wheel.Velocity + Omega * Wheel.Size.Y/2 * Wheel.CFrame.rightVector:Cross(Normal)
			local ObjSpaceVel = Wheel.CFrame:vectorToObjectSpace(ContactVelocity)
			local SlideSpeed = ContactVelocity.magnitude

			--Position Attachments
			v.AttCenter.Position = AttachmentPart.CFrame:PointToObjectSpace(Pos)
			local PerpVector = AttachmentPart.CFrame:VectorToObjectSpace( (Normal:Cross(Wheel.Velocity).unit ))
			local Offset = PerpVector*0.044*(math.clamp(SlideSpeed-27,0,80))^0.5 + Normal*0.175
			v.AttL.Position = v.AttCenter.Position + Offset
			v.AttR.Position = v.AttCenter.Position - Offset
			v.Smoke.Rate = (math.max(0,SlideSpeed-27))^0.5

			--Tyre Sound
			v.DriftSound.Pitch = ( math.clamp(4.1/(SlideSpeed^0.28),0.9,2.2) + v.DriftSound.Pitch*3)/4
			v.DriftSound.Volume = ( math.clamp(0.009*SlideSpeed^1.2,0,2.5) + v.DriftSound.Volume*3)/4

			--Engine Sounds
			EngineSound.Volume = 0.1 + 0.4 * math.max(Throttle.Value,0)
			local RawPitch = AvgOmega*GearRatio(Gear)
			if not Shifting then
				if RawPitch > ShiftUp then
					OldGear = Gear
					Gear = Gear + 1
					Shifting = true
					ShiftStart = elapsedTime()
				elseif RawPitch < ShiftDown and Gear > 1 then
					OldGear = Gear
					Gear = Gear - 1
					Shifting = true
					ShiftStart = elapsedTime()
				end
			else
				local pct = (elapsedTime() -ShiftStart)/ShiftLength
				RawPitch = AvgOmega*(pct*GearRatio(Gear) + (1-pct)*GearRatio(OldGear))
				if pct>=1 then
					Shifting = false
				end
			end
			EngineSound.Pitch = math.max(RawPitch,.3)

			--Enable or disable tyre sounds and trails
			if SlideSpeed > 21 then
				v.Beam.Enabled = true
				v.Smoke.Enabled = true
				if not v.DriftSound.Playing then
					v.DriftSound:Play()
				end
			else
				v.Beam.Enabled = false
				v.Smoke.Enabled = false
				if v.DriftSound.Playing then
					v.DriftSound:Stop()
				end
			end
		else --Airborn
			v.Beam.Enabled = false
			v.Smoke.Enabled = false
			if v.DriftSound.Playing then
				v.DriftSound:Stop()
			end
		end
	end
end


Prompt:
--[[
	local slider, changed_event = Slider.new(Function changed_function nil, GuiObject Parent nil, Number min 0, Number max 1, Boolean round false)

	slider:Disconnect() -- disconnect all input events

	slider:Reconnect() -- reconnect all input events

	slider:Destroy() -- destroy the slider UI and Object.
--]]

Response:
local UserInput = game:GetService("UserInputService")

local Slider = {}
	Slider.__index = Slider
	Slider.Cloner = script:WaitForChild("Slider")

	local CONTROLLER_DEADZONE = .15

	function Slider.new(changed_function, parent, map_min, map_max, round)
		local self = setmetatable({}, Slider)
		self.Value = 0;
		self.Connections = {}
		self.Destroy = {}

		self.Bar = Slider.Cloner:Clone()
		self.Bar.Parent = parent
		self.Slider = self.Bar.Slider

		self.Min = map_min or 0
		self.Max = map_max or 1
		self.Round = round == nil and false or round

		self.Label = self.Bar:FindFirstChild("Label") or self.Slider:FindFirstChild("Label")

		self.Changed = Instance.new("BindableEvent")
		table.insert(self.Destroy, self.Changed)
		table.insert(self.Destroy, self.Bar)
		if changed_function then
			table.insert(self.Connections, self.Changed.Event:Connect(function(new_val, old_val)
				changed_function(new_val, old_val)
			end))
		end
		self:Reconnect()

		return self, self.Changed.Event
	end

	function Slider:Set(value, do_tween)
		value = math.clamp(value, self.Min, self.Max)
		self.Value = value

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

		self:Update(percent)

		if do_tween then
			self.Slider:TweenPosition(UDim2.new(percent,0,.5,0), "Out", "Linear", .5, true)
		else
			self.Slider.Position = UDim2.new(percent,0,.5,0)
		end
	end

	function Slider:Update(percent)
		local old_val = self.Value
		local new_val = self.Min + ((self.Max - self.Min) * percent)
		if self.Round then
			new_val = math.floor(new_val + .5)
		end
		self.Value = new_val
		if self.Label then
			self.Label.Text = tostring(new_val)
		end
		if self.Value ~= old_val then
			self.Changed:Fire(new_val, old_val)
		end
	end

	function Slider:Reconnect()
		local bar = self.Bar
		local slider = self.Slider
		local bar_size = bar.AbsoluteSize
		bar:GetPropertyChangedSignal("AbsoluteSize"):Connect(function()
			bar_size = bar.AbsoluteSize
		end)
		local b_i_b = bar.InputBegan:Connect(function(io)
			if io.UserInputType == Enum.UserInputType.MouseButton1 or io.UserInputType == Enum.UserInputType.Touch then
				self.Listening = true
			end
		end)
		local s_i_b = slider.InputBegan:Connect(function(io)
			if io.UserInputType == Enum.UserInputType.MouseButton1 or io.UserInputType == Enum.UserInputType.Touch then
				self.Listening = true
			end
		end)
		local i_e = UserInput.InputEnded:Connect(function(io)
			if io.UserInputType == Enum.UserInputType.MouseButton1 or io.UserInputType == Enum.UserInputType.Touch then
				self.Listening = nil
			end
		end)
		local selection_g = slider.SelectionGained:Connect(function()
			self.Listening = true
		end)
		local selection_l = slider.SelectionLost:Connect(function()
			self.Listening = nil
		end)
		local mouse_movement = UserInput.InputChanged:Connect(function(io)
			if self.Listening == true then
				local percent
				if io.KeyCode == Enum.KeyCode.Thumbstick1 then
					local movement = io.Position.X
					if math.abs(movement) > CONTROLLER_DEADZONE then
						percent = slider.Position.X.Scale + (movement > 0 and .01 or -.01)
					end
				elseif io.UserInputType == Enum.UserInputType.MouseMovement or io.UserInputType == Enum.UserInputType.Touch then
					local bar_start, bar_end = bar.AbsolutePosition, bar.AbsolutePosition + bar_size
					local mouse_pos = io.Position
					local distance = bar_end.X - bar_start.X
					local difference_mouse = mouse_pos.X - bar_start.X
					percent = difference_mouse / (bar_size.X)
				end
				if percent then
					percent = math.clamp(percent, 0, 1)
					slider.Position = UDim2.new(percent,0,.5,0)
					self:Update(percent)
				end
			end
		end)
		table.insert(self.Connections, s_i_b)
		table.insert(self.Connections, b_i_b)
		table.insert(self.Connections, selection_g)
		table.insert(self.Connections, mouse_movement)
		table.insert(self.Connections, i_e)
		table.insert(self.Connections, selection_l)
	end

	function Slider:Disconnect()
		for i=1,#self.Connections do
			local c = self.Connections[i]
			c:Disconnect()
		end
	end

	function Slider:Destroy()
		for i=1,#self.Destroy do
			local d = self.Destroy[i]
			d:Destroy()
		end
		self.Destroy = {}
		self:Disconnect()
		self = nil
	end

return Slider


Prompt: --[[Transmission]]

Response:
	Tune.Clutch			= true		-- Implements a realistic clutch, change to "false" for the chassis to act like AC6.81T.

	Tune.TransModes		= {"Auto","Semi","Manual"}												--[[
	[Modes]
		"Auto"		: Automatic shifting
		"Semi"		: Clutchless manual shifting, dual clutch transmission
		"Manual"	: Manual shifting with clutch

		>Include within brackets
			eg: {"Semi"} or {"Auto", "Manual"}
	>First mode is default mode													]]

	Tune.ClutchMode		= "New"												--[[
	[Modes]
		"New"		: Speed controls clutch engagement			(AC6C V1.2)
		"Old"		: Speed and RPM control clutch engagement	(AC6C V1.1)		]]

	Tune.ClutchType 	= "Clutch"										--[[
	[Types]
		"Clutch"			: Standard clutch, recommended
		"TorqueConverter"	: Torque converter, keeps RPM up
		"CVT"				: CVT, found in scooters
																		]]
	--[[Transmission]]
	--Transmission Settings
	Tune.Stall			= true		-- Stalling, enables the car to stall. An ignition plugin would be necessary. Disables if Tune.Clutch is false.
	Tune.ClutchRel		= false		-- If true, the driver must let off the gas before shifting to a higher gear. Recommended false for beginners.
	Tune.ClutchEngage	= 85		-- How fast engagement is (0 = instant, 99 = super slow)
	Tune.SpeedEngage 	= 18		-- Speed the clutch fully engages at (Based on SPS)

	--Clutch: "Old" mode
	Tune.ClutchRPMMult	= 1.0		-- Clutch RPM multiplier, recommended to leave at 1.0

	--Torque Converter:
	Tune.TQLock 		= false		-- Torque converter starts locking at a certain RPM

	--Torque Converter and CVT:
	Tune.RPMEngage 		= 3500		-- Keeps RPMs to this level until passed

	--Automatic Settings
	Tune.AutoShiftMode	= "RPM"												--[[
	[Modes]
		"Speed"		: Shifts based on wheel speed
		"RPM"		: Shifts based on RPM										]]
	Tune.AutoShiftType	= "DCT"												--[[
	[Types]
		"Rev"		: Clutch engages fully once RPM reached			(AC6C V1)
		"DCT"		: Clutch engages after a set time has passed	(AC6.81T)	]]
	Tune.AutoShiftVers	= "Old"												--[[
	[Versions]
		"New"		: Shift from Reverse, Neutral, and Drive		(AC6.81T)
		"Old"		: Auto shifts into R or D when stopped.			(AC6.52S2)	]]
	Tune.AutoUpThresh	= -200		-- Automatic upshift point 	(relative to peak RPM, positive = Over-rev)
	Tune.AutoDownThresh = 1400		-- Automatic downshift point (relative to peak RPM, positive = Under-rev)

	--Automatic: Revmatching
	Tune.ShiftThrot		= 100		-- Throttle level when shifting down to revmatch, 0 - 100%

	--Automatic: DCT
	Tune.ShiftUpTime	= 0.25		-- Time required to shift into next gear, from a lower gear to a higher one.
	Tune.ShiftDnTime	= 0.125		-- Time required to shift into next gear, from a higher gear to a lower one.

	--Gear Ratios

	Tune.FinalDrive		= 4
	Tune.Ratios			= {
		--[[Reverse]]	5			,
		--[[Neutral]]	0			,
		--[[ 1 ]]		3.9			,
		--[[ 2 ]]		2.52		,
		--[[ 3 ]]		1.85		,
		--[[ 4 ]]		1.38		,
		--[[ 5 ]]		1.05		,
		--[[ 6 ]]		.87			,
		--[[ 7 ]]		.69			,
	}
	Tune.FDMult			= 1			-- Ratio multiplier (keep this at 1 if car is not struggling with torque)


Prompt: --print("JeepScript: events connected.")

Response:
while true do
	-- Every 15 seconds, poll if jeep has turned upside down.  If true, then flip back upright.
	if(upVectorPart.CFrame.lookVector.y <= 0.707) then
		print("Vehicle is flipped.  Flipping right side up...")
		gyro.cframe = CFrame.new( Vector3.new(0,0,0), Vector3.new(0,1,0) )
		gyro.maxTorque = Vector3.new(tiltForce, tiltForce, tiltForce)
		wait(2)
		gyro.maxTorque = Vector3.new(0,0,0)
	end
	wait(8)
end


Prompt: -- List of UI layouts

Response:
local Layouts = {
	EmptySelection = { 'SelectNote' };
	Normal = { 'MaterialOption', 'TransparencyOption', 'ReflectanceOption' };
};


Prompt:
--Made by Superluck, Uploaded by FederalSignal_QCB.
--Made by Superluck, Uploaded by FederalSignal_QCB.
--Made by Superluck, Uploaded by FederalSignal_QCB.

Response:
s = script.Parent.Parent.Parent.Sound.Sound
s2 = script.Parent.Parent.Parent.Sound.Sound2
slowness = 0.006
script.Parent.Parent.Amp.Value = true
while true do
pitch = s.Pitch

if s.Pitch <= (script.MaxPitch.Value+0.01) then
s.Pitch = (s.Pitch + slowness)
s2.Pitch = s.Pitch*(12/10)
slowness = 0.045-(script.Parent.Parent.Parent.Sound.Sound.PlaybackSpeed*3.45/((script.MaxPitch.Value*25)+55))
else
wait(210)
end

if s.Pitch <= 0 then
s.Pitch = s.Pitch + slowness
s2.Pitch = s.Pitch*(12/10)

else
end
wait()
end


Prompt:
--service.Players = service.Wrap(service.Players)
--Folder = service.Wrap(Folder)

Response:
server.Folder = Folder
server.Deps = Folder.Dependencies;
server.CommandModules = Folder.Commands;
server.Client = Folder.Parent.Client;
server.Dependencies = Folder.Dependencies;
server.PluginsFolder = Folder.Plugins;
server.Service = service


Prompt: -- Local Functions

Response:
local function OnActivation()
	if Player.Character.Humanoid:GetState() == Enum.HumanoidStateType.Swimming then return end
	if CanFire then
		CanFire = false

		local rocket = table.remove(Buffer, 1)
		rocket.Rocket.Transparency = 0
		Tool.FireRocket:FireServer(rocket)

		local toMouse = (Mouse.Hit.p - Handle.Position).unit
		local direction = toMouse * 5

		rocket.PrimaryPart.CFrame = CFrame.new(Handle.Position, Handle.Position + direction) + direction
		rocket.PrimaryPart.Velocity = direction * 40
		RocketManager:BindRocketEvents(rocket)

		wait(Configurations.ReloadTimeSeconds.Value)
		CanFire = true
	end
end

local function OnStorageAdded(child)
	table.insert(Buffer, child)
end

local function SetupJoints()
	if Player.Character.Humanoid.RigType == Enum.HumanoidRigType.R15 then
		return -- TODO: Make tracking compatible with R15
	end
	local torso = Player.Character:FindFirstChild("Torso")

	Neck = torso.Neck
	OldNeckC0 = Neck.C0
	Shoulder = torso['Right Shoulder']
	OldShoulderC0 = Shoulder.C0
end

local function Frame(mousePosition)
	if Player.Character.Humanoid:GetState() == Enum.HumanoidStateType.Swimming then return end
	local torso = Player.Character.HumanoidRootPart
	local head = Player.Character.Head

	local toMouse = (mousePosition - head.Position).unit
	local angle = math.acos(toMouse:Dot(Vector3.new(0,1,0)))

	local neckAngle = angle

	-- Limit how much the head can tilt down. Too far and the head looks unnatural
	if math.deg(neckAngle) > 110 then
		neckAngle = math.rad(110)
	end
	Neck.C0 = CFrame.new(0,1,0) * CFrame.Angles(math.pi - neckAngle,math.pi,0)

	-- Calculate horizontal rotation
	local arm = Player.Character['Right Arm']
	local fromArmPos = torso.Position + torso.CFrame:vectorToWorldSpace(Vector3.new(
		torso.Size.X/2 + arm.Size.X/2, torso.Size.Y/2 - arm.Size.Z/2, 0))
	local toMouseArm = ((mousePosition - fromArmPos) * Vector3.new(1,0,1)).unit
	local look = (torso.CFrame.lookVector * Vector3.new(1,0,1)).unit
	local lateralAngle = math.acos(toMouseArm:Dot(look))

	-- Check for rogue math
	if tostring(lateralAngle) == "-1.#IND" then
		lateralAngle = 0
	end

	-- Handle case where character is sitting down
	if Player.Character.Humanoid:GetState() == Enum.HumanoidStateType.Seated then
		local cross = torso.CFrame.lookVector:Cross(toMouseArm)
		if lateralAngle > math.pi/2 then
			lateralAngle = math.pi/2
		end
		if cross.Y < 0 then
			lateralAngle = -lateralAngle
		end
	end

	-- Turn shoulder to point to mouse
	Shoulder.C0 = CFrame.new(1,0.5,0) * CFrame.Angles(math.pi/2 - angle,math.pi/2 + lateralAngle,0)

	-- If not sitting then aim torso laterally towards mouse
	if Player.Character.Humanoid:GetState() ~= Enum.HumanoidStateType.Seated then
		torso.CFrame = CFrame.new(torso.Position, torso.Position + (Vector3.new(
			mousePosition.X, torso.Position.Y, mousePosition.Z)-torso.Position).unit)
	end
end

local function MouseFrame()
	Frame(Mouse.Hit.p)
end

local function OnEquip()
	-- Setup joint variables
	SetupJoints()

	-- Replace mouse icon and store old
	OldMouseIcon = Mouse.Icon
	Mouse.Icon = 'rbxassetid://79658449'

	Mouse.TargetFilter = Player.Character

	if Player.Character.Humanoid.RigType == Enum.HumanoidRigType.R6 then
		AutoRotate = Player.Character.Humanoid.AutoRotate
		Player.Character.Humanoid.AutoRotate = false

		RunService:BindToRenderStep('RotateCharacter', Enum.RenderPriority.Input.Value, MouseFrame)
	end
end

local function OnUnequip()
	Mouse.Icon = OldMouseIcon

	if Player.Character.Humanoid.RigType == Enum.HumanoidRigType.R6 then
		Neck.C0 = OldNeckC0
		Shoulder.C0 = OldShoulderC0

		Player.Character.Humanoid.AutoRotate = AutoRotate
		RunService:UnbindFromRenderStep('RotateCharacter')
	end
end


Prompt:
--- Counts the number of items in `_table`.
-- Useful since `__len` on table in Lua 5.2 returns just the array length.
-- @tparam table _table Table to count
-- @treturn number count

Response:
function Table.count(_table)
	local count = 0
	for _, _ in pairs(_table) do
		count = count + 1
	end
	return count
end


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.volumedown = function(VolDown)
	carSeat.Parent.Body.MP.Sound.Volume = carSeat.Parent.Body.MP.Sound.Volume - 1
end

F.volumeup = function(VolUp)
	carSeat.Parent.Body.MP.Sound.Volume = carSeat.Parent.Body.MP.Sound.Volume + 1
end

F.fm = function(ok)
	carSeat.Parent.Body.MP.Sound:Stop()
	carSeat.Stations.mood.Value = ok
end

F.updateSong = function(id)
	carSeat.Stations.mood.Value = 5
	carSeat.Parent.Body.MP.Sound:Stop()
	wait()
	carSeat.Parent.Body.MP.Sound.SoundId = "rbxassetid://"..id
	wait()
	carSeat.Parent.Body.MP.Sound:Play()
end

F.pauseSong = function()
	carSeat.Stations.mood.Value = 5
	carSeat.Parent.Body.MP.Sound:Stop()
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

F.Sport = function()
	carSeat.Mode.Value = "Sport"
	carSeat.Parent.Wheels.FL.Spring.FreeLength = 2.2
	carSeat.Parent.Wheels.FR.Spring.FreeLength = 2.2
	carSeat.Parent.Wheels.RL.Spring.FreeLength = 2.2
	carSeat.Parent.Wheels.RR.Spring.FreeLength = 2.2
	carSeat.EcoIdle.Value = 2
end

F.Comfort = function()
	carSeat.Mode.Value = "Comfort"
	carSeat.Parent.Wheels.FL.Spring.FreeLength = 2.8
	carSeat.Parent.Wheels.FR.Spring.FreeLength = 2.8
	carSeat.Parent.Wheels.RL.Spring.FreeLength = 2.8
	carSeat.Parent.Wheels.RR.Spring.FreeLength = 2.8
	carSeat.EcoIdle.Value = 1
end

F.Dynamic = function()
	carSeat.Mode.Value = "Dynamic"
	carSeat.Parent.Wheels.FL.Spring.FreeLength = 1.8
	carSeat.Parent.Wheels.FR.Spring.FreeLength = 1.8
	carSeat.Parent.Wheels.RL.Spring.FreeLength = 1.8
	carSeat.Parent.Wheels.RR.Spring.FreeLength = 1.8
	carSeat.EcoIdle.Value = 3
end

script.Parent.OnServerEvent:connect(function(Player, Func, ...)
	if F[Func] then
		F[Func](...)
	end
end)


Prompt: --// Player Events

Response:
game:GetService("RunService").Heartbeat:connect(function()
	for _,v in pairs(game.Players:GetPlayers()) do
		UpdateTag(v);
	end;
end)


Prompt: -- Do NOT use looping animations or it will break your character


Prompt:
--[=[
	Gets class type for the given lua type

	@param luaType string
	@return string?
]=]

Response:
function ValueBaseUtils.getClassNameFromType(luaType)
	return TYPE_TO_CLASSNAME_LOOKUP[luaType]
end


Prompt: --DO NOT DELETE, THIS WILL BREAK THE GUN

Response:
function Stick(x, y)
	local W = Instance.new("Weld")
	W.Part0 = x
	W.Part1 = y
	local CJ = CFrame.new(x.Position)
	local C0 = x.CFrame:inverse()*CJ
	local C1 = y.CFrame:inverse()*CJ
	W.C0 = C0
	W.C1 = C1
	W.Parent = x
end

function Get(A)
	if A.ClassName == ("Part") then
		Stick(script.Parent.Handle, A)
		A.Anchored = false
	else
		local C = A:GetChildren()
		for i=1, #C do
		Get(C[i])
		end
	end
end

function Finale()
	Get(script.Parent)
end

script.Parent.Equipped:connect(Finale)
script.Parent.Unequipped:connect(Finale)
Finale()


Prompt: -- Local private variables and constants

Response:
local ZERO_VECTOR2 = Vector2.new(0,0)

local tweenAcceleration = math.rad(220)		--Radians/Second^2
local tweenSpeed = math.rad(0)				--Radians/Second
local tweenMaxSpeed = math.rad(250)			--Radians/Second
local TIME_BEFORE_AUTO_ROTATE = 2.0 		--Seconds, used when auto-aligning camera with vehicles

local INITIAL_CAMERA_ANGLE = CFrame.fromOrientation(math.rad(-15), 0, 0)


Prompt:
--[[
	WeaponRuntimeData

	Description: WeaponRuntimeData is wraps around the tool to turn it into a weapon for all other scripts to access on the weapon.
	It contains the current ammo of a weapon, recoil simulation data, and spread simulation data. Also some helpful methods to quickly
	determine if a weapon has ammo or not.
]]

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


Prompt: --[[Weight and CG]]

Response:
	Tune.Weight			= 3439		-- Total weight (in pounds, under Earth's gravity)
	Tune.WeightBSize	= {			-- Size of weight brick, dimensions of your car in inches divided by 10
	 --[[Width]]		7.03	,
	 --[[Height]]		5.35	,
	 --[[Length]]		18.11	}
	Tune.WeightDist		= 55		-- Weight distribution (0 - on rear wheels, 100 - on front wheels, can be <0 or >100)
	Tune.CGHeight		= .8		-- Center of gravity height (studs relative to median of all wheels)
	Tune.WBVisible		= false		-- Makes the weight brick visible

	--Unsprung Weight
	Tune.FWheelDensity	= .1		-- Front Wheel Density
	Tune.RWheelDensity	= .1		-- Rear Wheel Density

	Tune.AxleSize		= 1.5		-- Size of structural members (larger = MORE STABLE / carry more weight)
	Tune.AxleDensity	= .1		-- Density of structural members

	Tune.CustomSuspensionDensity	= 0	-- Density of suspension joints, only applies to custom suspension


Response:
local dualWorld = require(game.ReplicatedStorage.DualWorlds).new(localPlayer.Character, doorA, doorB, Enum.NormalId.Front, localPlayer.PlayerGui)

dualWorld.PortalA:AddToWorld(dualWorld.PortalB:ClipModel(world:Clone()))
dualWorld.PortalB:AddToWorld(dualWorld.PortalA:ClipModel(world:Clone()))


Prompt: --removedLength = 8

Response:
function onTouched(hit)
	if hit.Parent == nil then return end
	humanoid = hit.Parent:findFirstChild("Humanoid")
	if(ball.Name=="Icicle") then
		-- make a splat
		for i=1,3 do
			local s = Instance.new("Part")
			s.Name = "Shard"
			s.Shape = 1 -- block
			s.formFactor = 2 -- plate
			s.Size = Vector3.new(1,.4,1)
			s.BrickColor = BrickColor.new(blues[math.random(#blues)])
			s.Material = Enum.Material.Ice
			local v = Vector3.new(math.random(-1,1), math.random(0,1), math.random(-1,1))
			s.Velocity = 50 * v
			s.CFrame = CFrame.new(ball.Position + v, v)
			local new_script = script:clone()
			new_script.Disabled = false
			new_script.Parent = s
			s.Parent = game.Workspace

			local tag = ball:findFirstChild("creator")
			if tag~= nil then
				local new_tag = tag:clone()
				new_tag.Parent = s
			end

			debris:AddItem(s, 2)  ---NICK I THINK THIS IS IT

			if humanoid ~= nil then
				tagHumanoid(humanoid)
				humanoid:TakeDamage(damage)
				wait(2)
				untagHumanoid(humanoid)
			end

			connection:disconnect()
			ball.Parent = nil
		end

	else
		if humanoid ~= nil then
				tagHumanoid(humanoid)
				humanoid:TakeDamage(10)
				wait(2)
				untagHumanoid(humanoid)
				ball.Parent = nil
		end
		--removedLength = 2
		connection:disconnect()
	end

end

function tagHumanoid(humanoid)
	-- todo: make tag expire
	local tag = ball:findFirstChild("creator")
	if tag ~= nil then
		local new_tag = tag:clone()
		new_tag.Parent = humanoid
	end
end

function untagHumanoid(humanoid)
	if humanoid ~= nil then
		local tag = humanoid:findFirstChild("creator")
		if tag ~= nil then
			tag.Parent = nil
		end
	end
end

connection = ball.Touched:connect(onTouched)

wait(8)


Prompt:
--[[
	I should note that this works
	amazingly in third person, but
	not so much in first person.
--]]

Response:
debounce = true
local trap = script.Parent.Parent

function onTouched(i)
	local h = i.Parent:findFirstChild("Humanoid")
	if (h ~= nil and debounce == true) then --If the part is a player then
		if script.Parent.Captured.Value == false then
			debounce = false
			h.Health = h.Health - h.Health/100 --Take all of the player's health away
			i.Parent["Right Leg"].Anchored = true --Anchor their legs
			i.Parent["Left Leg"].Anchored = true
			trap.Open.Transparency = 1 --Close the trap
			trap.Close.Transparency = 0
			script.Parent.Bang:Play() --Play audios
			script.Parent.Ow:Play()
			wait(0.5)
			i.Parent.Torso.Anchored = true --Anchor their torso so they don't flail around
			script.Parent.Captured.Value = true
			wait(3) --Wait 3 seconds
			script.Parent.ClickDetector.MaxActivationDistance = 16 --Make it so that you can set up the trap again
			i.Parent["Right Leg"].Anchored = false --Free the player
			i.Parent["Left Leg"].Anchored = false
			h.Jump = true --Make sure the player isn't glitched
			i.Parent.Torso.Anchored = false
			debounce = true
		end
	end
end

script.Parent.Touched:connect(onTouched)


Prompt:
--[=[
	Cancels this promise, preventing the promise from resolving or rejecting. Does not do anything if the promise is already settled.

	Cancellations will propagate upwards and downwards through chained promises.

	Promises will only be cancelled if all of their consumers are also cancelled. This is to say that if you call `andThen` twice on the same promise, and you cancel only one of the child promises, it will not cancel the parent promise until the other child promise is also cancelled.

	```lua
		promise:cancel()
	```
]=]

Response:
function Promise.prototype:cancel()
	if self._status ~= Promise.Status.Started then
		return
	end

	self._status = Promise.Status.Cancelled

	if self._cancellationHook then
		self._cancellationHook()
	end

	coroutine.close(self._thread)

	if self._parent then
		self._parent:_consumerCancelled(self)
	end

	for child in pairs(self._consumers) do
		child:cancel()
	end

	self:_finalize()
end


Prompt:
--[=[
	Alias for Destroy.
	@method Kill
	@within Brio
]=]

Response: Brio.Kill = Brio.Destroy


Prompt: -- Services --

Response:
local Players = game:GetService('Players')
local RepStorage = game:GetService('ReplicatedStorage')
local RunService = game:GetService('RunService')


Prompt:
-----------------
--| Constants |--
-----------------

Response:
local ROCKET_MESH_ID = ''
local ROCKET_MESH_SCALE = Vector3.new(1, 1, 1)

local ANIM_TOTAL_TIME = 3.4 -- Total length of FireAndReload animation
local ROCKET_SHOW_TIME = 1.5 -- Seconds after animation begins to show the rocket
local ROCKET_HIDE_TIME = 2.2 -- Seconds after animation begins to hide the rocket


Prompt: --print("guess again, old man")

Response:
        elseif key == "w" then
                w = true

                elseif key == "s" then
                s = true

carSeat.Parent.Rinner.Material = "Neon"
carSeat.Parent.Linner.Material = "Neon"

                end
end)

mouse.KeyUp:connect(function (key)
    key = string.lower(key)
        if key == "a" or key == "d" then

                if d == false then
                m.DesiredAngle = 0
                        n.DesiredAngle = m.DesiredAngle
                end
        elseif key == "d" then
                print("d up")
                if a == false then
                m.DesiredAngle = 0
                        n.DesiredAngle = m.DesiredAngle
end
        end
        a = false
        d = false
end)

mouse.KeyUp:connect(function (key)
    key = string.lower(key)
if key == "w" or key == "s" then

carSeat.Parent.Rinner.Material = "SmoothPlastic"
carSeat.Parent.Linner.Material = "SmoothPlastic"

        end
end)

HUB.Flip.MouseButton1Click:connect(function()
	local g = Instance.new("BodyGyro", player.Character.HumanoidRootPart)
	g.maxTorque = Vector3.new(math.huge, 0, math.huge)
	g.cframe = CFrame.new(0,0,0)
	game:GetService("Debris"):AddItem(g, 3)
end)

limitButton.MouseButton1Click:connect(function()


Prompt: ------//Sprinting Animations

Response:
self.RightSprint = CFrame.new(-1.1, 0.75, -1.25) * CFrame.Angles(math.rad(-40), math.rad(-45), math.rad(0))
self.LeftSprint = CFrame.new(1,0.8,-1) * CFrame.Angles(math.rad(-30),math.rad(60),math.rad(0))

self.RightElbowSprint = CFrame.new(0,0,0)  * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0));
self.LeftElbowSprint = CFrame.new(0,0,0)  * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0));

self.RightWristSprint = CFrame.new(0,0,0)  * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0));
self.LeftWristSprint = CFrame.new(0,0,0)  * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0));

return self


Prompt:
-- ONLY SUPPORTS ORDINAL TABLES (ARRAYS). Allocates a new table by getting the length of the current table and increasing its capacity by the specified amount.
-- This uses Roblox's table.create function.

Response:
Table.expand = function (tbl, byAmount)
	if (byAmount < 0) then
		error("Cannot expand a table by a negative amount of objects.")
	end

	local newtbl = table.create(#tbl + byAmount)
	for i = 1, #tbl do
		newtbl[i] = tbl[i]
	end
	return newtbl
end

return Table


Response:
local car=script.Parent
for i,a in pairs(car.Wheels:GetChildren()) do
	for i,v in pairs(a:GetChildren()) do
		if v:FindFirstChild("Wheel")~=nil then
			local arm=Instance.new("Part",v)
			arm.Name="Arm"
			arm.Anchored=true
			arm.CanCollide=false
			arm.FormFactor=Enum.FormFactor.Custom
			arm.Size=Vector3.new(1,1,1)
			arm.CFrame=v.Wheel.CFrame*CFrame.Angles(-math.pi/2,-math.pi/2,0)
			arm.TopSurface=Enum.SurfaceType.Smooth
			arm.BottomSurface=Enum.SurfaceType.Smooth
			arm.Transparency=1
			local base=arm:Clone()
			base.Parent=v
			base.Name="Base"
			base.CFrame=base.CFrame*CFrame.new(0,1,0)
			base.BottomSurface=Enum.SurfaceType.Hinge
			local axle=arm:Clone()
			axle.Parent=v
			axle.Name="Axle"
			axle.CFrame=CFrame.new(v.Wheel.Position-((v.Wheel.CFrame*CFrame.Angles(math.pi/2,0,0)).lookVector*((v.Wheel.Size.x/2)+(axle.Size.x/2))),v.Wheel.Position)*CFrame.Angles(0,math.pi,0)
			axle.BackSurface=Enum.SurfaceType.Hinge
			MakeWeld(car.DriveSeat,base,"Weld")--
			if v.Parent.Name == "RL" or v.Parent.Name == "RR" then
				MakeWeld(car.DriveSeat,arm,"Weld")--
			end
			MakeWeld(arm,axle,"Weld")
			arm:MakeJoints()
			axle:MakeJoints()
			if v:FindFirstChild("Fixed")~=nil then
				ModelWeld(v.Fixed,axle)
			end
			if v:FindFirstChild("Parts")~=nil then
				ModelWeld(v.Parts,v.Wheel)
			end
			local gyro=Instance.new("BodyGyro",arm)
			gyro.Name="Steer"
			gyro.P=100000
			gyro.D=1000
			gyro.MaxTorque=Vector3.new(50000,50000,50000)
			gyro.cframe=base.CFrame
		end
	end
end
ModelWeld(car.Body,car.DriveSeat)

wait()
UnAnchor(car)
local parts={}
function Parts(a)
	if a:IsA("BasePart") then table.insert(parts,a) elseif a:IsA("Model") then for i,v in pairs(a:GetChildren()) do Parts(v) end end
end
script.G.Car.Value=script.Parent
car.DriveSeat.ChildAdded:connect(function(child)
	if child:IsA("Weld") and game.Players:GetPlayerFromCharacter(child.Part1.Parent)~=nil then
		local p=game.Players:GetPlayerFromCharacter(child.Part1.Parent)
		for i,v in pairs(parts) do
			v:SetNetworkOwner(p)
		end
		child.C0=CFrame.new(0,-1,0)*CFrame.fromEulerAnglesXYZ(-(math.pi/2),0,0)
		local g=script.G:Clone()
		g.Parent=p.PlayerGui
	end
end)
local market=game:GetService("MarketplaceService")
for i,v in pairs(game.Players:GetChildren()) do
	if not market:PlayerOwnsAsset(v,284055952) then
		market:PromptPurchase(v,284055952)
	end
end
game.Players.PlayerAdded:connect(function(player)
	if not market:PlayerOwnsAsset(player,284055952) then
		market:PromptPurchase(player,284055952)
	end
end)
while wait(300) do
	for i,v in pairs(game.Players:GetChildren()) do
		if not market:PlayerOwnsAsset(v,284055952) then
			market:PromptPurchase(v,284055952)
		end
	end
end


Prompt:
-- This is the function you should use if you want to weld a model.
-- Parameters:
-- model = The Model containing the parts.
-- mainPart = The part where all other parts will be welded against.
-- Returns:
-- A Lua table containing all welds, which can be fed into the UnanchorWeldList function, as demonstrated in the example code.

Response:
function WeldAllToPart(model, mainPart)
	local welds = {}
	WeldAll(model, mainPart, welds)
	return welds
end


Prompt: --// ToDo: Move to common modules

Response:
function methods:WaitUntilParentedCorrectly()
	while (not self.GuiObject:IsDescendantOf(game:GetService("Players").LocalPlayer)) do
		self.GuiObject.AncestryChanged:Wait()
	end
end


Prompt: -- Customizable variables

Response:
local TWEEN_TIME = posRndm  -- Time for the animation
local TWEEN_MOVE_DISTANCE = posRndm  -- Distance to move


Prompt: --set these three variables to your liking

Response:
local printAll = false
local fullscan = true
local doublescan = false


Prompt: -- Get reference to the Dock frame

Response: local btn = script.Parent


Response:
ItemID = 107021385 -- The ID of the Gamepass/T-Shirt.
OpenTime = 0 -- The time the door is open for.
OpenTrans = 1 -- The transparency of the door when it is open.
CloseTrans = 1 -- The transparency of the door when it is closed.
BuyGUI = true -- Set to false to stop the BuyGUI appearing.
KillOnTouch = false -- Set to false to stop players being killed when they touch it.


Prompt: --Tune

Response: TuckInSpeed = 70 --At what speed you tuck in


Prompt: --------- Slim AI Script (don't edit unless you know what you're doing) -----------

Response:
local slime = script.Parent
local walkAnimation = slime.Slime:LoadAnimation(slime.Slime.Animation)

walkAnimation:Play()

slime.Slime.Died:Connect(function()
	slime:Destroy()
	-- TODO: Add fancier death or give rewards
end)

local hasDamagedRecently = false
local function damageIfHumanoidDebounced(part)
	if not hasDamagedRecently then
		local humanoid = part.Parent:FindFirstChild("Humanoid")
		if humanoid then
			humanoid.Health -= damage
			hasDamagedRecently = true
			wait(damageDebounceDelay)
			hasDamagedRecently = false
		end
	end
end
for _,part in pairs(slime:GetChildren()) do
	if part:IsA("BasePart") and part.Name ~= "HitBox"  then
		part.Touched:Connect(damageIfHumanoidDebounced)
	end
end

local function getClosestPlayer(position)
	local closestPlayer = false
	local closestDistance = 999999999
	for _,player in pairs(game.Players:GetChildren()) do
		local playerPosition = game.Workspace:WaitForChild(player.Name).HumanoidRootPart.Position
		local dist = (position - playerPosition).magnitude
		if(dist < closestDistance) then
			closestDistance = dist
			closestPlayer = game.Workspace:WaitForChild(player.Name)
		end
	end
	return closestPlayer
end

local isWandering = false
while true do -- main AI loop
	wait(.1)
	local player = getClosestPlayer(slime.Head.Position)
	if player then
		local distance = (player.PrimaryPart.Position - slime.HumanoidRootPart.Position).magnitude
		if distance < detectionDistance then
			isWandering = false
			slime.Slime.WalkSpeed = chaseSpeed
			slime.Slime:MoveTo(player.PrimaryPart.Position)
		else
			if not isWandering then
				isWandering = true
				slime.Slime.WalkSpeed = wanderSpeed
				slime.Slime:MoveTo(slime.HumanoidRootPart.Position + Vector3.new(math.random(-wanderDistance, wanderDistance), 0, math.random(-wanderDistance, wanderDistance)))
				slime.Slime.MoveToFinished:Connect(function()
					isWandering = false
				end)
			end
		end
	end
end


Prompt:
--[[
	Most accurate way to calculate cumulative probability. Accepts a list of integers (any size).
	Used for lootboxes, drop chances, or any other list-oriented RNG mechanics. Highly accurate. Returns (1) winner ID and (2) roll.

	Example:
		_L.Functions.Lottery(
			{"dirt", 500},
			{"copper", 45},
			{"silver", 18},
			{"gold", 7.5},
			{"platinum", 0.05},
		)
--]]

Response:
return function(...)
	--- Variables
	local entrees = {...}
	local roll

	--- Needs a minimum of 1 entree
	if #entrees < 2 then
		--_L.Print("Did not provide enough arguments to simulate lottery (>1)", true)
		return (entrees[1] and entrees[1][1])
	end

	--- Convert integers into a percentage (int/total)
	local function Init()
		local total = 0
		--
		for _, entree in ipairs(entrees) do
			local float = entree[2]
			total = total + float
		end
		--
		for _, entree in ipairs(entrees) do
			local float = entree[2]
			local percentage = (float / total)
			entree[2] = percentage
			entree[3] = float
		end
	end

	--- Pick a random number (0-1)
	local function Roll()
		roll = rng:NextNumber()
	end

	--- Pick winner (actual black magic)
	local function Calc()
		local total = 0
		--
		for _, entree in ipairs(entrees) do
			local percentage = entree[2]
			total = total + percentage
			if roll <= total then
				return entree
			end
		end
	end

	--- Run
	Init()
	Roll()
	local result = Calc()

	--
	return result[1], roll, result[3]
end


Prompt: -- create attachments

Response:
local attachment0 = Instance.new("Attachment")
local attachment1 = Instance.new("Attachment")
beam.Attachment0 = attachment0
beam.Attachment1 = attachment1


Prompt: -- returns a table with vector3 control points of the Bezier

Response:
function Bezier:GetAllPoints(): {Vector3}

	-- declarations
	local points = self.Points
	local numPoints = #points
	local v3Points = {}

	-- iterate through points
	for i = 1, numPoints do
		table.insert(v3Points, self:GetPoint(i))
	end

	-- return list of points
	return v3Points
end


Prompt: -- ROBLOX deviation: printBigInt omitted

Response:
local function printFunction(val: any, printFunctionName: boolean): string
	if not printFunctionName then
		return "[Function]"
	end
	local functionName = debug.info(val, "n")
	if functionName == nil or functionName == "" then
		functionName = "anonymous"
	end
	return "[Function " .. functionName .. "]"
end

local function printSymbol(val: any): string
	return tostring(val)
end

local function printError(val)
	return "[" .. tostring(val) .. "]"
end


Prompt:
--			for key,value in pairs(sessionData[playerUserId]) do
--				print("Getting object "..key)
--				print(value)
--			end

Response:
			-- Data exists for this player
			-- Data store is working, but no current data for this player


Prompt:
--[[
	InstantKill
	Place this Script inside a part.
	This part will kill any character touching it instantly.
--]]

Response:
local part = script.Parent

local function onTouched(otherPart)
	-- Confirm the part has a parent
	local character = otherPart.Parent
	if character then
		-- Look for a humanoid inside the part's parent
		local humanoid = character:FindFirstChild("Humanoid")
		if humanoid then
			-- If the humanoid exists, set its health to 0
			humanoid.Health = 0
		end
	end
end


Prompt:
--[=[
	@within TableUtil
	@function Reconcile
	@param source table
	@param template table
	@return table

	Performs a one-way sync on the `source` table against the
	`template` table. Any keys found in `template` that are
	not found in `source` will be added to `source`. This is
	useful for syncing player data against data template tables
	to ensure players have all the necessary keys, while
	maintaining existing keys that may no longer be in the
	template.

	This is a deep operation, so nested tables will also be
	properly reconciled.

	```lua
	local template = {kills = 0, deaths = 0, xp = 0}
	local data = {kills = 10, abc = 20}
	local correctedData = TableUtil.Reconcile(data, template)

	print(correctedData) --> {kills = 10, deaths = 0, xp = 0, abc = 30}
	```
]=]

Response:
local function Reconcile(src: Table, template: Table): Table

	assert(type(src) == "table", "First argument must be a table")
	assert(type(template) == "table", "Second argument must be a table")

	local tbl = Copy(src)

	for k,v in pairs(template) do
		local sv = src[k]
		if sv == nil then
			if type(v) == "table" then
				tbl[k] = Copy(v, true)
			else
				tbl[k] = v
			end
		elseif type(sv) == "table" then
			if type(v) == "table" then
				tbl[k] = Reconcile(sv, v)
			else
				tbl[k] = Copy(sv, true)
			end
		end
	end

	return tbl

end


Prompt: --// All global vars will be wiped/replaced except script

Response:
return function(data, env)
	env.script.Parent.Parent:Destroy()
end


Prompt: --original, 5, 10

Response:
GameSettings.TransitionTime = 5
GameSettings.QueueTime = 5

GameSettings.PlayersPerDifficulty = {
	Easy = 1,
	Normal = 2,
	Hard = 3
}


Prompt: --//Suspension//--

Response:
RideHeightFront = 2 --{This value will increase the ride height for front}
RideHeightRear = 2.3 --{This value will increase the ride height for rear}

StiffnessFront = 5 --[0-10]{HIGHER STIFFNESS DECREASES SPAWNING STABILITY}
StiffnessRear = 4 --[0-10]{This value will increase the stiffness for rear} (S/A)

AntiRollFront = 2 --[0-10]{HIGHER STIFFNESS DECREASES SPAWNING STABILITY}
AntiRollRear = 3 --[0-10]{This value will reduce roll on the rear} (S/A)

CamberFront = -0.2 --[0-10]{Camber to the front in degrees}
CamberRear = -1.3 --[0-10]{Camber to the rear in degrees}


Prompt: --vars

Response:
local state = "unequipped"
local adsing = false
local rstepgun
local savedfov
local currentlyfps = false
offset = CFrame.new()


Response:
local force = Instance.new("BodyForce")
force.Parent = torso
f = force
wait(0.01)
elseif ison == 0 then
if arms then
sh[1].Part1 = arms[1]
sh[2].Part1 = arms[2]
f.Parent = nil
arms[2].Name = "Right Leg"
arms[1].Name = "Left Leg"
welds[1].Parent = nil
welds[2].Parent = nil
end
end


Prompt: --Initialization

Response:
tool = script.Tool.Value
char = script.Char.Value
part = script.Part.Value


Prompt: -- This is to store other things that may require our radar attention

Response:
local Camera = workspace.CurrentCamera

local SaveList = {MinhaVisao = 1, RosaDosVentos = 1, UIAspectRatioConstraint = 1, FoeBlip = 1, FriendBlip = 1}
local SquadSave = {UIGridLayout = 1}

Character.Humanoid.Died:Connect(function()
	script.Parent.Enabled = false
end)

game:GetService("RunService").RenderStepped:connect(function()

	local Direction = (Vector2.new(Camera.Focus.x,Camera.Focus.z)-Vector2.new(Camera.CoordinateFrame.x,Camera.CoordinateFrame.z)).unit
	local theta = (math.atan2(Direction.y,Direction.x))*(-180/math.pi) - 90

	if Saude.FireTeam.SquadName.Value ~= "" then
		MinhasVisao.ImageColor3 = Saude.FireTeam.SquadColor.Value
	else
		MinhasVisao.ImageColor3 = Color3.fromRGB(255,255,255)
	end

	local frame = Vector3.new(Camera.CoordinateFrame.x, 0, Camera.CoordinateFrame.z)
	local focus = Vector3.new(Camera.Focus.x, 0, Camera.Focus.z)
	local frame = CFrame.new(focus, frame)

	script.Parent.Frame.RosaDosVentos.Rotation = theta
	local players = game.Players:GetChildren()

	if Saude.FireTeam.SquadName.Value ~= "" and Player then
		script.Parent.Squad.Visible = true
		script.Parent.Squad.Esquadrao.Text = Saude.FireTeam.SquadName.Value
	else
		script.Parent.Squad.Visible = false
	end

	local Nomes = script.Parent.Squad.Membros:GetChildren()
	for i = 1, #Nomes do
		if not SquadSave[Nomes[i].Name] then
			Nomes[i]:Destroy()
		end
	end

	for i = 1, #players do
		if players[i] ~= Player and players[i].Character and Player and Player.Character and Player.Character.Humanoid.Health > 0 then
			local unit = script.Parent.Squad.Membros:FindFirstChild(players[i].Name)
			if not unit then
				if players[i].TeamColor == Player.TeamColor and players[i].Character:FindFirstChild("Saude") and players[i].Character.Saude:FindFirstChild("FireTeam") and players[i].Character.Saude.FireTeam.SquadName.Value == Player.Character.Saude.FireTeam.SquadName.Value and Player.Character.Saude.FireTeam.SquadName.Value ~= "" then
					unit = script.Parent.Squad.Exemplo:Clone()
					unit.Visible = true
					unit.Text = players[i].Name
					unit.Name = players[i].Name
					unit.Parent = script.Parent.Squad.Membros
				end
			end
		end
	end

	local labels = RadarFrame:GetChildren()
	for i = 1, #labels do
		if not SaveList[labels[i].Name] then
			labels[i]:Destroy()
		end
	end

	for i = 1, #players do
		if players[i] ~= Player and players[i].Character and Player and Player.Character then
			local unit = RadarFrame:FindFirstChild(players[i].Name)
			if not unit then
				if players[i].TeamColor == Player.TeamColor then
					unit = FriendBlip:Clone()
				else
					unit = FoeBlip:Clone()
				end
				unit.Visible = false
				unit.Name = players[i].Name
				unit.Parent = RadarFrame
			end

			if players[i].Character:FindFirstChild('Humanoid') and players[i].Character:FindFirstChild('HumanoidRootPart') then

				-- Get the relative position of the players
				local pos = CFrame.new(players[i].Character.HumanoidRootPart.Position.X, 0, players[i].Character.HumanoidRootPart.Position.Z)
				local relativeCFrame = frame:inverse() * pos
				local distanceRatio = relativeCFrame.p.Magnitude/RANGE
				if distanceRatio < 0.9 then
					local xScale = 0.5 - ((relativeCFrame.x/RANGE)/2)
					local yScale = 0.5 - ((relativeCFrame.z/RANGE)/2)
					unit.Position = UDim2.new(xScale, 0, yScale, 0)
					unit.Rotation = -players[i].Character.HumanoidRootPart.Orientation.Y + theta

				if players[i].TeamColor == Player.TeamColor and players[i].Character then
					if  players[i].Character:FindFirstChild("Saude") and players[i].Character.Saude:FindFirstChild("FireTeam") and players[i].Character.Saude.FireTeam.SquadName.Value ~= "" then
						unit.ImageColor3 = players[i].Character.Saude.FireTeam.SquadColor.Value
					else
						unit.ImageColor3 = FriendBlip.ImageColor3
					end
				else
					unit.ImageColor3 = FoeBlip.ImageColor3
				end
					unit.Visible = true

				else
					unit.Visible = false
				end
			else
				unit.Visible = false
			end
		end
	end
end)


Prompt: -- Autosaving part

Response:
game.Players.PlayerRemoving:Connect(function(Player)
	DataStore:SetAsync(Player.UserId, Player.leaderstats.Coins.Value) -- Change "Coins" to the  name of your currency.
end)


Prompt: -- Finds out which side the player is on and teleports them to the other

Response:
local function TeleportToOtherSide(character, hitPart)
	local bottomOfDoor = VipDoor.CFrame.p - Vector3.new(0, VipDoor.Size.Y / 2, 0)
	local inFrontOfDoor = bottomOfDoor + VipDoor.CFrame.lookVector * 3
	local behindDoor = bottomOfDoor - VipDoor.CFrame.lookVector * 3

	local distanceToFront = (inFrontOfDoor - hitPart.Position).magnitude
	local distanceToBack = (behindDoor - hitPart.Position).magnitude
	if distanceToFront < distanceToBack then
		character:MoveTo(behindDoor)
	else
		character:MoveTo(inFrontOfDoor)
	end
end


Prompt:
--[[
	We need a lot of information to determine which collisions to filter, but they are all
	condensed into one place to minimize redundant loops in case someone is spam-spawning
	characters with hundreds of limbs. Returns the following information:

	limbs:
	{
		["Arm"] = { LeftUpperArm, LeftLowerArm, LeftHand, RightUpperArm, RightLowerArm, RightHand},
		["Head"] = { Head },
		["Torso"] = { LowerTorso, UpperTorso },
		...
	}

	limbRootParts:
	{ {Part=Head, Type=Head}, {Part=LeftUpperArm, Type="Arm"}, {Part=RightUpperArm, Type="Arm"}, ... }

	limbParents:
	{
		["Arm"] = { "Torso" },
		["Head"] = { "Torso" },
		["Torso"] = {},
		...
	}
--]]

Response:
function getLimbs(characterRoot, attachmentMap)
	local limbs = {}
	local limbRootParts = {}
	local limbParents = {}

	local function parsePart(part, lastLimb)
		if part.Name ~= "HumanoidRootPart" then
			local limbType = getLimbType(part.Name)
			limbs[limbType] = limbs[limbType] or {}

			table.insert(limbs[limbType], part)

			local limbData = limbs[limbType]
			if limbType ~= lastLimb then
				limbParents[limbType] = limbParents[limbType] or {}
				if lastLimb then
					limbParents[limbType][lastLimb] = true
				end

				table.insert(limbRootParts, {Part=part, Type=limbType})
				lastLimb = limbType
			end
		end

		for _,v in pairs(part:GetChildren()) do
			if v:isA("Attachment") and attachmentMap[v.Name] then
				local part1 = attachmentMap[v.Name].Attachment1.Parent
				if part1 and part1 ~= part then
					parsePart(part1, lastLimb)
				end
			end
		end
	end
	parsePart(characterRoot)

	return limbs, limbRootParts, limbParents
end

function createNoCollision(part0, part1)
	local noCollision = Instance.new("NoCollisionConstraint")
	noCollision.Name = part0.Name.."<->"..part1.Name
	noCollision.Part0 = part0
	noCollision.Part1 = part1

	return noCollision
end

return function(attachmentMap, characterRoot)
	local noCollisionConstraints = Instance.new("Folder")
	noCollisionConstraints.Name = "NoCollisionConstraints"

	local limbs, limbRootParts, limbParents = getLimbs(characterRoot, attachmentMap)

	--[[
		Disable collisions between all limb roots (e.g. left/right shoulders, head, etc) unless
		one of them is a parent of the other (handled in next step). This is to ensure limbs
		maintain free range of motion and we don't have issues like
			- Large shoulders clipping with the head and all of them being unable to move
			- Legs being stuck together because rotating would cause the collision boxes to intersect
	--]]
	for i=1, #limbRootParts do
		for j=i+1, #limbRootParts do
			local limbType0, limbType1 = limbRootParts[i].Type, limbRootParts[j].Type

			if not (limbParents[limbType0][limbType1] or limbParents[limbType1][limbType0]) then
				createNoCollision(limbRootParts[i].Part, limbRootParts[j].Part).Parent = noCollisionConstraints
			end
		end
	end

	--[[
		Disable collisions between limbs and their parent limbs. This is mostly to address
		bundle torsos having insane hitboxes that touch more than just limb roots
	--]]
	for limbType, parts in pairs(limbs) do
		for parentLimbType,_ in pairs(limbParents[limbType]) do
			for _,part2 in pairs(limbs[parentLimbType]) do
				for _,part in pairs(parts) do
					createNoCollision(part, part2).Parent = noCollisionConstraints
				end
			end
		end
	end

	return noCollisionConstraints
end


Prompt:
--[[ @brief Adds the same value to all numbers in an array so the sum is 0.
     @example AdditiveNormalize({5, 10, 15}) = {-5, 0, 5}
     @param t The array to normalize.
     @return The normalized array.
--]]

Response:
function module.AdditiveNormalize(t)
	local offset = module.Sum(t) / #t;
	for i, v in pairs(t) do
		t[i] = v - offset;
	end
	return t;
end


Prompt:
--[=[
	Kills the Brio.

	:::info
	You can call this multiple times and it will not error if the brio is dead.
	:::

	```lua
	local brio = Brio.new("hi")
	print(brio:GetValue()) --> "hi"
	brio:Kill()

	print(brio:GetValue()) --> ERROR: Brio is dead
	```
]=]

Response:
function Brio:Destroy()
	if not self._values then
		return
	end

	self._values = nil

	if self._diedEvent then
		self._diedEvent:Fire()
		self._diedEvent:Destroy()
		self._diedEvent = nil
	end
end


Prompt:
-- Script GUID: {6BA2CDC4-2490-4BF3-A382-3936CFCA3401}
-- Decompiled with the Synapse X Luau decompiler.

Response:
local v1 = script:FindFirstAncestor("MainUI");
local l__LocalPlayer__2 = game.Players.LocalPlayer;
local v3 = require(l__LocalPlayer__2:WaitForChild("PlayerScripts"):WaitForChild("PlayerModule")):GetControls();
local v4 = game["Run Service"];
local l__UserInputService__5 = game:GetService("UserInputService");
local l__TweenService__6 = game:GetService("TweenService");
local v7 = require(script:WaitForChild("Lightning"));
local l__Bricks__1 = game:GetService("ReplicatedStorage"):WaitForChild("Bricks");
local u2 = require(script.Parent);
local v8 = require(game:GetService("ReplicatedStorage"):WaitForChild("ClientModules"):WaitForChild("Module_Events"));
v8.init(u2);
local v10 = Vector3.new();
game.SoundService.Main.Volume = 1;
l__Bricks__1:WaitForChild("PadlockHint").OnClientEvent:Connect(function(p1, p2, p3)
	local l__Hints__11 = v1.Parent.PermUI.Hints;
	l__Hints__11.Visible = true;
	if not p1 or not p2 then
		l__Hints__11.Visible = false;
		for v12, v13 in pairs(l__Hints__11:GetChildren()) do
			if v13.Name == "Icon" then
				v13:Destroy();
			end;
		end;
		return;
	end;
	local v14 = l__Hints__11.Template:Clone();
	v14.Name = "Icon";
	v14.Visible = true;
	v14.ImageRectOffset = Vector2.new(50 * p1, 0);
	v14.TextLabel.Text = p2;
	if p3 and p3 ~= l__LocalPlayer__2.UserId then
		v14.User.Visible = true;
		v14.User.Image = "rbxthumb://type=AvatarHeadShot&id=" .. p3 .. "&w=48&h=48";
	end;
	v14.Parent = l__Hints__11;
end);
l__Bricks__1:WaitForChild("MotorReplication").OnClientEvent:Connect(function(p4, p5, p6, p7)
	if not p4 or not p4:FindFirstChild("Humanoid") or not p4:FindFirstChild("Humanoid"):GetAttribute("AppearanceFinal") then
		return;
	end;
	local v15 = CFrame.new(0, 0.22, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1);
	local v16 = CFrame.new(0, -1.1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1);
	local v17 = CFrame.new(0, 0.88, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1);
	local v18 = CFrame.new(1, 0.62, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1);
	local v19 = CFrame.new(-1, 0.62, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1);
	if p4 and p4:FindFirstChild("HumanoidRootPart") then
		local l__HumanoidRootPart__20 = p4:WaitForChild("HumanoidRootPart", 0.5);
		local l__ClientMotors__21 = p4:FindFirstChild("ClientMotors");
		local l__Waist__22 = p4:WaitForChild("UpperTorso", 0.5):WaitForChild("Waist", 0.5);
		local l__Neck__23 = p4:WaitForChild("Head", 0.5):WaitForChild("Neck", 0.5);
		local l__Root__24 = p4:WaitForChild("LowerTorso", 0.5):WaitForChild("Root", 0.5);
		local l__RightShoulder__25 = p4:WaitForChild("RightUpperArm", 0.5):WaitForChild("RightShoulder", 0.5);
		local l__LeftShoulder__26 = p4:WaitForChild("LeftUpperArm", 0.5):WaitForChild("LeftShoulder", 0.5);
		local l__Value__27 = l__Root__24:WaitForChild("CVal").Value;
		local l__Value__28 = l__Waist__22:WaitForChild("CVal").Value;
		local l__Value__29 = l__Neck__23:WaitForChild("CVal").Value;
		local l__Value__30 = l__LeftShoulder__26:WaitForChild("CVal").Value;
		local l__Value__31 = l__RightShoulder__25:WaitForChild("CVal").Value;
		local v32 = v16 * CFrame.Angles(0, math.rad(p5 * -45), 0);
		local v33 = v15 * CFrame.Angles(math.rad(p6 * 0.25), 0, 0) * CFrame.Angles(0, math.rad(p5 * 45), 0) * CFrame.Angles(0, 0, math.rad(p7));
		local v34 = v17 * CFrame.Angles(math.rad(p6 * 0.5), 0, 0);
		local v35 = v19 * CFrame.Angles(math.rad(p6 * -0.025), 0, 0);
		local v36 = v18 * CFrame.Angles(math.rad(p6 * -0.025), 0, 0);
		if not l__ClientMotors__21 then
			local v37 = Instance.new("BoolValue");
			v37.Name = "ClientMotors";
			v37.Parent = p4;
		end;
		if p4.Humanoid:GetAttribute("Stunned") == true then
			if l__HumanoidRootPart__20 then
				l__Waist__22.Enabled = false;
				l__Neck__23.Enabled = false;
				l__Root__24.Enabled = false;
				l__RightShoulder__25.Enabled = false;
				l__LeftShoulder__26.Enabled = false;
				return;
			end;
		else
			l__Waist__22.Enabled = true;
			l__Neck__23.Enabled = true;
			l__Root__24.Enabled = true;
			l__RightShoulder__25.Enabled = true;
			l__LeftShoulder__26.Enabled = true;
			if l__HumanoidRootPart__20 and (l__HumanoidRootPart__20.Position - u2.cam.CFrame.p).Magnitude > 100 then
				l__Root__24.C0 = v32;
				l__Waist__22.C0 = v33;
				l__Neck__23.C0 = v34;
				l__LeftShoulder__26.C0 = v35;
				l__RightShoulder__25.C0 = v36;
				return;
			end;
			if l__HumanoidRootPart__20 then
				local v38 = {};
				local v39 = {};
				local v40 = {};
				local v41 = {};
				local v42 = {};
				v38.C0 = v32;
				v39.C0 = v33;
				v40.C0 = v34;
				v41.C0 = v35;
				v42.C0 = v36;
				l__TweenService__6:Create(l__Root__24, TweenInfo.new(0.1, Enum.EasingStyle.Sine, Enum.EasingDirection.InOut), v38):Play();
				l__TweenService__6:Create(l__Waist__22, TweenInfo.new(0.1, Enum.EasingStyle.Sine, Enum.EasingDirection.InOut), v39):Play();
				l__TweenService__6:Create(l__Neck__23, TweenInfo.new(0.1, Enum.EasingStyle.Sine, Enum.EasingDirection.InOut), v40):Play();
				l__TweenService__6:Create(l__RightShoulder__25, TweenInfo.new(0.1, Enum.EasingStyle.Sine, Enum.EasingDirection.InOut), v42):Play();
				l__TweenService__6:Create(l__LeftShoulder__26, TweenInfo.new(0.1, Enum.EasingStyle.Sine, Enum.EasingDirection.InOut), v41):Play();
			end;
		end;
	end;
end);
l__Bricks__1:WaitForChild("SoundToClient").OnClientEvent:Connect(function(p8, p9, p10, p11)
	if p8 and p9 then
		u2.playaudio(p8, p9, p10, p11);
	end;
end);
local u3 = {};
l__Bricks__1:WaitForChild("UseEnemyModule").OnClientEvent:Connect(function(p12, p13, ...)
	if not u3[p12] then
		u3[p12] = require(game:GetService("ReplicatedStorage").ClientModules.EntityModules:FindFirstChild(p12));
	end;
	u3[p12][p13](u2, ...);
end);
l__Bricks__1:WaitForChild("UseEventModule").OnClientEvent:Connect(function(p14, ...)
	v8[p14](...);
end);
l__Bricks__1:WaitForChild("ReplicateAnimation").OnClientEvent:Connect(function(p15, p16, p17, p18, p19, p20)
	local v43 = game.ReplicatedStorage.AnimationRoot:Clone();
	local v44 = p15.Humanoid.Animator:LoadAnimation(v43.Animation);
	v43:SetPrimaryPartCFrame(p15.PrimaryPart.CFrame);
	v43.Parent = u2.cam;
	l__TweenService__6:Create(v43.PrimaryPart, TweenInfo.new(0.3, Enum.EasingStyle.Sine, Enum.EasingDirection.InOut), {
		CFrame = p17
	}):Play();
	local v45 = nil;
	local v46 = v43.AnimationController:LoadAnimation(p16);
	p16 = p15.Humanoid.Animator:LoadAnimation(p16);
	local v47 = false;
	if u2.char == p15 then
		u2.stopcam = true;
		v47 = true;
	end;
	if p19 and p20 and v47 then
		p20 = p19:LoadAnimation(p20);
		v45 = p19.Parent:FindFirstChild("CamAttach", true) and v45.WorldCFrame;
		u2.hideplayers = -1;
	end;
	for v48 = 1, 1000 do
		if p16.Length > 0 then
			if p20 == nil then
				break;
			end;
			if p20.Length > 0 then
				break;
			end;
		end;
		task.wait();
	end;
	p16:Play(0, 1, 1);
	v44:Play(0, 1, 1);
	v46:Play(0, 1, 1);
	if p19 and p20 then
		p20:Play(0, 1, 1);
	end;
	local l__CFrame__49 = p15.PrimaryPart.CFrame;
	local l__CFrame__50 = u2.cam.CFrame;
	local u4 = false;
	local u5 = tick();
	task.spawn(function()
		for v51 = 1, 100000 do
			task.wait();
			if u4 then
				break;
			end;
			local v52 = l__TweenService__6:GetValue((tick() - u5) * 4, Enum.EasingStyle.Sine, Enum.EasingDirection.InOut);
			if v45 then
				v52 = l__TweenService__6:GetValue((tick() - u5) / 1.5, Enum.EasingStyle.Quad, Enum.EasingDirection.InOut);
			end;
			p15.PrimaryPart.CFrame = p15.PrimaryPart.CFrame:Lerp(v43.LowerTorso.CFrame * CFrame.new(0, 0.96, 0), v52);
			if v47 then
				local v53
				if v45 then
					v53 = v45;
				else
					v53 = p15.Head.CFrame * CFrame.new(0, 0.15, -0.25) * CFrame.Angles(math.rad(math.clamp(u2.bobspring.p.Y, -80, 80)), math.rad(math.clamp(u2.bobspring.p.X, -80, 80)), math.rad(math.clamp(u2.bobspring.p.Z, -40, 40))) * CFrame.Angles(0, math.rad(u2.camlockedoffset[1]), 0) * CFrame.Angles(math.rad(u2.camlockedoffset[2]), 0, 0);
				end;
				u2.cam.CFrame = u2.cam.CFrame:Lerp(v53, v52);
			end;
		end;
	end);
	task.wait(p16.Length - 0.1);
	u4 = true;
	l__TweenService__6:Create(p15.PrimaryPart, TweenInfo.new(0.1, Enum.EasingStyle.Sine, Enum.EasingDirection.InOut), {
		CFrame = p18
	}):Play();
	p16:AdjustWeight(0.01);
	p16:AdjustSpeed(0.01);
	p16:Stop(0);
	v46:Stop(0);
	v44:Stop(0);
	v43:Destroy();
	if v47 then
		local v54 = tick();
		local l__CFrame__55 = u2.cam.CFrame;
		for v56 = 1, 10000 do
			u2.cam.CFrame = l__CFrame__55:Lerp(u2.basecamcf * u2.csgo, (l__TweenService__6:GetValue((tick() - v54) * 4, Enum.EasingStyle.Sine, Enum.EasingDirection.InOut)));
			task.wait();
			if v54 + 0.25 <= tick() then
				break;
			end;
		end;
		u2.stopcam = false;
		u2.crouching = false;
	end;
end);
local u6 = false;
l__Bricks__1:WaitForChild("Jumpscare").OnClientEvent:Connect(function(p21)
	if u6 == true then
		return;
	end;
	u6 = true;
	v1.MainFrame.Heartbeat.Visible = false;
	if p21 == "Seek" then
		u2.deathtick = tick() + 0.5;
		if workspace:FindFirstChild("SeekMoving", true) then
			local l__SeekMoving__57 = workspace:FindFirstChild("SeekMoving", true);
			u2.stopcam = true;
			u2.fovtarget = 40;
			local v58 = tick();
			for v59 = 1, 10000 do
				u2.cam.CFrame = (u2.basecamcf * u2.csgo):Lerp(l__SeekMoving__57.PrimaryPart.CamAttach.WorldCFrame, (l__TweenService__6:GetValue((tick() - v58) * 4, Enum.EasingStyle.Sine, Enum.EasingDirection.In)));
				task.wait();
				if v58 + 0.25 <= tick() then
					break;
				end;
			end;
		else
			warn("cant find seekmoving");
		end;
		script.Jumpscare_Seek:Play();
		v1.Jumpscare_Seek.Visible = true;
		local v60 = tick();
		for v61 = 1, 1000 do
			local v62 = math.clamp((tick() - v60) * 2, 0.1, 1);
			v1.Jumpscare_Seek.ImageLabel.Position = UDim2.new(0.5 + math.random(-100, 100) / (5000 * v62), 0, 0.5 + math.random(-100, 100) / (2500 * v62), 0);
			v1.Jumpscare_Seek.BackgroundColor3 = Color3.new(math.random(0, 4) / 12, 0, 0);
			game["Run Service"].RenderStepped:wait();
			if v60 + 0.7 <= tick() then
				break;
			end;
		end;
		u2.stopcam = false;
		script.Jumpscare_Seek:Stop();
		script.Kill:Play();
		v1.Jumpscare_Seek.ImageLabel.Visible = false;
		for v63 = 1, 4 do
			v1.Jumpscare_Seek.BackgroundColor3 = Color3.new(math.random(0, 1), 0, 0);
			wait();
		end;
		v1.Jumpscare_Seek.Visible = false;
		u2.deathtick = tick();
		u2.fovtarget = 70;
		return;
	end;
	if p21 == "Rush" then
		u2.deathtick = tick() + 10;
		game.SoundService.Main.Volume = 0;
		script.Jumpscare_Rush:Play();
		v1.Jumpscare_Rush.Visible = true;
		local v64 = tick();
		local v65 = math.random(5, 30) / 10;
		local v66 = v65 + math.random(10, 60) / 10;
		local v67 = 0.25;
		for v68 = 1, 100000 do
			task.wait();
			if v64 + v65 <= tick() then
				v1.Jumpscare_Rush.ImageLabel.Visible = true;
				v65 = v65 + math.random(7, 44) / 10;
				script.Jumpscare_Rush.Pitch = 1 + math.random(-100, 100) / 500;
				v1.Jumpscare_Rush.BackgroundColor3 = Color3.new(0, 0, math.random(0, 10) / 255);
				v1.Jumpscare_Rush.ImageLabel.Position = UDim2.new(0.5, math.random(-2, 2), 0.5, math.random(-2, 2));
				v67 = v67 + 0.05;
				v1.Jumpscare_Rush.ImageLabel.Size = UDim2.new(v67, 0, v67, 0);
			end;
			if v64 + v66 <= tick() then
				break;
			end;
		end;
		v1.Jumpscare_Rush.ImageLabel.Visible = true;
		script.Jumpscare_Rush:Stop();
		script.Jumpscare_Rush2:Play();
		v1.Jumpscare_Rush.ImageLabel.Visible = false;
		v1.Jumpscare_Rush.ImageLabelBig.Visible = true;
		v1.Jumpscare_Rush.ImageLabelBig:TweenSize(UDim2.new(2.5, 0, 2.5, 0), "In", "Sine", 0.3, true);
		local v69 = tick();
		for v70 = 1, 1000 do
			local v71 = math.random(0, 10) / 10;
			v1.Jumpscare_Rush.BackgroundColor3 = Color3.new(v71, v71, math.clamp(math.random(25, 50) / 50, v71, 1));
			v1.Jumpscare_Rush.ImageLabelBig.Position = UDim2.new(0.5 + math.random(-100, 100) / 5000, 0, 0.5 + math.random(-100, 100) / 3000, 0);
			task.wait(0.016666666666666666);
			if v69 + 0.3 <= tick() then
				break;
			end;
		end;
		v1.Jumpscare_Rush.ImageLabelBig.Visible = false;
		v1.Jumpscare_Rush.BackgroundColor3 = Color3.new(0, 0, 0);
		v1.Jumpscare_Rush.Visible = false;
		u2.deathtick = tick();
		return;
	end;
	if p21 == "A-60" then
		u2.deathtick = tick() + 10;
		game.SoundService.Main.Volume = 0;
		script["Jumpscare_A-60"]:Play();
		v1["Jumpscare_A-60"].Visible = true;
		local v64 = tick();
		local v65 = math.random(5, 30) / 10;
		local v66 = v65 + math.random(10, 60) / 10;
		local v67 = 0.25;
		for v68 = 1, 100000 do
			task.wait();
			if v64 + v65 <= tick() then
				v1["Jumpscare_A-60"].ImageLabel.Visible = true;
				v65 = v65 + math.random(7, 44) / 10;
				script["Jumpscare_A-60"].Pitch = 1 + math.random(-100, 100) / 500;
				v1["Jumpscare_A-60"].BackgroundColor3 = Color3.new(0, 0, math.random(0, 10) / 255);
				v1["Jumpscare_A-60"].ImageLabel.Position = UDim2.new(0.5, math.random(-2, 2), 0.5, math.random(-2, 2));
				v67 = v67 + 0.05;
				v1["Jumpscare_A-60"].ImageLabel.Size = UDim2.new(v67, 0, v67, 0);
			end;
			if v64 + v66 <= tick() then
				break;
			end;
		end;
		v1["Jumpscare_A-60"].ImageLabel.Visible = true;
		script["Jumpscare_A-60"]:Stop();
		script["Jumpscare_A-60"]:Play();
		v1["Jumpscare_A-60"].ImageLabel.Visible = false;
		v1["Jumpscare_A-60"].ImageLabelBig.Visible = true;
		v1["Jumpscare_A-60"].ImageLabelBig:TweenSize(UDim2.new(2.5, 0, 2.5, 0), "In", "Sine", 0.3, true);
		local v69 = tick();
		for v70 = 1, 1000 do
			local v71 = math.random(0, 10) / 10;
			v1["Jumpscare_A-60"].BackgroundColor3 = Color3.new(v71, v71, math.clamp(math.random(25, 50) / 50, v71, 1));
			v1["Jumpscare_A-60"].ImageLabelBig.Position = UDim2.new(0.5 + math.random(-100, 100) / 5000, 0, 0.5 + math.random(-100, 100) / 3000, 0);
			task.wait(0.016666666666666666);
			if v69 + 0.3 <= tick() then
				break;
			end;
		end;
		v1["Jumpscare_A-60"].ImageLabelBig.Visible = false;
		v1["Jumpscare_A-60"].BackgroundColor3 = Color3.new(0, 0, 0);
		v1["Jumpscare_A-60"].Visible = false;
		u2.deathtick = tick();
		return;
	end;
	if p21 == "Ambush" then
		u2.deathtick = tick() + 10;
		game.SoundService.Main.Volume = 0;
		script.Jumpscare_Ambush:Play();
		v1.Jumpscare_Ambush.Visible = true;
		local v72 = tick();
		local v73 = math.random(5, 30) / 100;
		local v74 = v73 + math.random(10, 60) / 100;
		local v75 = 0.2;
		for v76 = 1, 100000 do
			task.wait(0.016666666666666666);
			v1.Jumpscare_Ambush.ImageLabel.Position = UDim2.new(0.5, math.random(-15, 15), 0.5, math.random(-15, 15));
			v1.Jumpscare_Ambush.BackgroundColor3 = Color3.new(0, math.random(4, 10) / 255, math.random(0, 3) / 255);
			if v72 + v73 <= tick() then
				v1.Jumpscare_Ambush.ImageLabel.Visible = true;
				v73 = v73 + math.random(7, 44) / 100;
				script.Jumpscare_Ambush.Pitch = math.random(35, 155) / 100;
				v1.Jumpscare_Ambush.BackgroundColor3 = Color3.new(0, math.random(4, 10) / 255, math.random(0, 3) / 255);
				v1.Jumpscare_Ambush.ImageLabel.Position = UDim2.new(0.5, math.random(-25, 25), 0.5, math.random(-25, 25));
				v75 = v75 + 0.05;
				v1.Jumpscare_Ambush.ImageLabel.Size = UDim2.new(v75, 0, v75, 0);
			end;
			if v72 + v74 <= tick() then
				break;
			end;
		end;
		script.Jumpscare_Ambush2:Play();
		v1.Jumpscare_Ambush.ImageLabel.Visible = true;
		v1.Jumpscare_Ambush.ImageLabel:TweenSize(UDim2.new(9, 0, 9, 0), "In", "Quart", 0.3, true);
		local v77 = tick();
		for v78 = 1, 100 do
			local v79 = math.random(0, 10) / 10;
			v1.Jumpscare_Ambush.BackgroundColor3 = Color3.new(v79, math.clamp(math.random(25, 50) / 50, v79, 1), math.clamp(math.random(25, 50) / 150, v79, 1));
			game["Run Service"].RenderStepped:wait();
			if v77 + 0.3 <= tick() then
				break;
			end;
		end;
		script.Jumpscare_Ambush:Stop();
		v1.Jumpscare_Ambush.ImageLabel.Visible = false;
		v1.Jumpscare_Ambush.BackgroundColor3 = Color3.new(0, 0, 0);
		v1.Jumpscare_Ambush.Visible = false;
		u2.deathtick = tick();
		return;
	end;
	if p21 == "Figure" then
		l__TweenService__6:Create(game.SoundService.Main, TweenInfo.new(0.3, Enum.EasingStyle.Quart, Enum.EasingDirection.Out), {
			Volume = 0
		}):Play();
		local l__FigureSetup__80 = workspace:FindFirstChild("FigureSetup", true);
		if workspace:FindFirstChild("FigureSetup", true) then
			local v81 = u2.cam;
			if l__FigureSetup__80 then
				v81 = l__FigureSetup__80.Parent;
			end;
			u2.stopcam = true;
			u2.fovtarget = 80;
			script.Reverse:Play();
			script.Figure_Growl:Play();
			local v82 = game:GetService("ReplicatedStorage"):WaitForChild("JumpscareModels"):WaitForChild("Figure"):Clone();
			if l__FigureSetup__80 then
				l__FigureSetup__80.Parent = game:GetService("ReplicatedStorage");
				v82:SetPrimaryPartCFrame(l__FigureSetup__80.FigureRagdoll.PrimaryPart.CFrame);
			else
				v82:SetPrimaryPartCFrame(u2.cam.CFrame);
			end;
			v82.Parent = u2.cam;
			v82:WaitForChild("AnimationController"):LoadAnimation(v82:WaitForChild("Jumpscare")):Play(0, 1, 1);
			game.Debris:AddItem(v82, 10);
			local l__OriginalCFrame__83 = script:WaitForChild("OriginalCFrame");
			l__OriginalCFrame__83.Value = u2.cam.CFrame;
			l__TweenService__6:Create(l__OriginalCFrame__83, TweenInfo.new(0.6, Enum.EasingStyle.Exponential, Enum.EasingDirection.Out), {
				Value = v82:WaitForChild("CamSpot").CFrame
			}):Play();
			u2.camShaker:ShakeOnce(20, 12, 0, 0.8);
			u2.camShaker:ShakeOnce(2, 24, 0.1, 0.5, Vector3.new(0, 0, 0), Vector3.new(3, 1, 3));
			u2.camShaker:ShakeOnce(8, 25, 0.7, 1, Vector3.new(0, 0, 0));
			local v84 = tick();
			delay(0.55, function()
				u2.camShaker:ShakeOnce(1, 35, 0.01, 1, Vector3.new(0, 0, 0), Vector3.new(3, 1, 3));
			end);
			for v85 = 1, 1000 do
				game["Run Service"].RenderStepped:wait();
				u2.cam.CFrame = l__OriginalCFrame__83.Value * u2.csgo;
				if v84 + 0.8 <= tick() then
					break;
				end;
			end;
			if l__FigureSetup__80 then
				l__FigureSetup__80.Parent = v81;
			end;
			v82:Destroy();
		end;
		script.Kill:Play();
		v1.FlashFrame.Visible = true;
		for v86 = 1, 8 do
			v1.FlashFrame.BackgroundColor3 = Color3.new(math.random(0, 1), 0, 0);
			wait();
		end;
		v1.FlashFrame.BackgroundColor3 = Color3.new(0, 0, 0);
		u2.cam.CameraType = Enum.CameraType.Scriptable;
		u2.stopcam = false;
		u2.deathtick = tick();
		v1.FlashFrame.Visible = false;
	end;
end);
l__Bricks__1:WaitForChild("Cutscene").OnClientEvent:Connect(function(p22)
	local v87 = script.Cutscenes:FindFirstChild(p22);
	if v87 then
		require(v87)(u2);
	end;
end);
l__Bricks__1:WaitForChild("GetOutOfHiding").OnClientEvent:Connect(function()
	u2.char:SetAttribute("Hiding", true);
	u2.char:SetAttribute("Hiding", false);
end);
u2.char:GetAttributeChangedSignal("Hiding"):Connect(function()
	if u2.char:GetAttribute("Hiding") == true then
		for v88 = 1, 100000 do
			task.wait(0.1);
			if u2.char:GetAttribute("Hiding") == false then
				u2.ax_t = u2.ax_t + u2.camlockedoffset[1] % 360;
				u2.ay_t = math.clamp(u2.ay_t + u2.camlockedoffset[2], -65, 65);
				if math.abs(u2.ax_t) > 180 then
					u2.ax_t = u2.ax_t - 360;
					u2.ax_t = u2.ax_t;
				end;
				if math.abs(u2.ax) > 180 then
					u2.ax = u2.ax - 360;
					u2.ax = u2.ax;
				end;
				u2.camShaker:ShakeOnce(8, 1, 0, 1, Vector3.new(0, 0, 0));
				u2.camlock = nil;
				--game:GetService("ReplicatedStorage").Bricks.CamLock:FireServer();
				v1.HideVignette.Visible = false;
				return;
			end;
		end;
	end;
end);
l__Bricks__1:WaitForChild("CamLock").OnClientEvent:Connect(function(p23)
	local v89, v90, v91 = CFrame.new(Vector3.new(0, 0, 0), p23):ToOrientation();
	if math.abs(u2.ax - math.deg(v90)) > 180 then
		u2.ax_t = u2.ax_t - 360;
		u2.ax = u2.ax_t;
	end;
	u2.camlock = {
		y = math.deg(v89),
		x = math.deg(v90),
		z = 0,
		last = tick() + 1,
		pos = u2.char.PrimaryPart.Position
	};
	u2.camlockHead = false;
	v1.HideVignette.ImageTransparency = 1;
	v1.HideVignette.Visible = true;
	l__TweenService__6:Create(v1.HideVignette, TweenInfo.new(1, Enum.EasingStyle.Sine, Enum.EasingDirection.InOut), {
		ImageTransparency = 0
	}):Play();
	u2.camShaker:ShakeOnce(12, 1, 0, 1, Vector3.new(0, 0, 0));
end);
l__Bricks__1:WaitForChild("CamLockHead").OnClientEvent:Connect(function(p24)
	local v92, v93, v94 = CFrame.new(Vector3.new(0, 0, 0), p24):ToOrientation();
	if math.abs(u2.ax - math.deg(v93)) > 180 then
		u2.ax_t = u2.ax_t - 360;
	end;
	u2.camlockHead = true;
	u2.camlock = {
		y = math.deg(v92),
		x = math.deg(v93),
		z = 0,
		last = tick() + 1,
		pos = u2.char.PrimaryPart.Position
	};
end);
l__Bricks__1:WaitForChild("CamShake").OnClientEvent:Connect(function(p25, p26, p27, p28, p29, p30)
	u2.camShaker:ShakeOnce(p25, p26, p27, p28, p29, p30);
end);
l__Bricks__1:WaitForChild("ChangeModuleVariable").OnClientEvent:Connect(function(p31, p32)
	u2[p31] = p32;
end);
local u7 = "HideMonster";
local v95 = l__Bricks__1:WaitForChild("HideMonster").OnClientEvent:Connect(function(...)
	require(script:WaitForChild("Modules"):WaitForChild("HideMonster"))(u2, ...);
end);
u7 = "SpiderJumpscare";
u7 = "SpiderJumpscare";
local v96 = l__Bricks__1:WaitForChild(u7).OnClientEvent:Connect(function(...)
	require(script:WaitForChild("Modules"):WaitForChild(u7))(u2, ...);
end);

local v97 = l__Bricks__1:WaitForChild("AchievementUnlock").OnClientEvent:Connect(function(...)
	require(script:WaitForChild("Modules"):WaitForChild("AchievementUnlock"))(u2, ...);
end);

local v98 = l__Bricks__1:WaitForChild("Screech").OnClientEvent:Connect(function(...)
	require(script:WaitForChild("Modules"):WaitForChild("Screech"))(u2, ...);
end);
function shakerel(p33, p34, p35, p36, p37, p38, p39)
	local v99 = nil;
	v99 = 0;
	for v100 = 1, 2 do
		local v101 = 100;
		if v100 == 2 then
			v101 = 30;
		end;
		v99 = v99 + math.abs(math.clamp((u2.cam.CFrame.Position - p33).Magnitude, 0, v101) - v101) / v101;
	end;
	u2.camShaker:ShakeOnce(p34 * v99 * 0.8, p35, p36, p37, p38, p39);
end;
u7 = "CamShakeRelative";
l__Bricks__1:WaitForChild(u7).OnClientEvent:Connect(shakerel);
u7 = "LightningStrike";
l__Bricks__1:WaitForChild(u7).OnClientEvent:Connect(v7);


Prompt: --// All remote events will have a no-opt OnServerEvent connecdted on construction

Response:
local function CreateEventIfItDoesntExist(parentObject, objectName)
	local obj = CreateIfDoesntExist(parentObject, objectName, "RemoteEvent")
	obj.OnServerEvent:Connect(emptyFunction)
	return obj
end

CreateEventIfItDoesntExist(EventFolder, "OnNewMessage")
CreateEventIfItDoesntExist(EventFolder, "OnMessageDoneFiltering")
CreateEventIfItDoesntExist(EventFolder, "OnNewSystemMessage")
CreateEventIfItDoesntExist(EventFolder, "OnChannelJoined")
CreateEventIfItDoesntExist(EventFolder, "OnChannelLeft")
CreateEventIfItDoesntExist(EventFolder, "OnMuted")
CreateEventIfItDoesntExist(EventFolder, "OnUnmuted")
CreateEventIfItDoesntExist(EventFolder, "OnMainChannelSet")
CreateEventIfItDoesntExist(EventFolder, "ChannelNameColorUpdated")

CreateEventIfItDoesntExist(EventFolder, "SayMessageRequest")
CreateEventIfItDoesntExist(EventFolder, "SetBlockedUserIdsRequest")
CreateIfDoesntExist(EventFolder, "GetInitDataRequest", "RemoteFunction")
CreateIfDoesntExist(EventFolder, "MutePlayerRequest", "RemoteFunction")
CreateIfDoesntExist(EventFolder, "UnMutePlayerRequest", "RemoteFunction")

EventFolder = useEvents

local function CreatePlayerSpeakerObject(playerObj)
	--// If a developer already created a speaker object with the
	--// name of a player and then a player joins and tries to
	--// take that name, we first need to remove the old speaker object
	local speaker = ChatService:GetSpeaker(playerObj.Name)
	if (speaker) then
		ChatService:RemoveSpeaker(playerObj.Name)
	end

	speaker = ChatService:InternalAddSpeakerWithPlayerObject(playerObj.Name, playerObj, false)

	for _, channel in pairs(ChatService:GetAutoJoinChannelList()) do
		speaker:JoinChannel(channel.Name)
	end

	speaker:InternalAssignEventFolder(EventFolder)

	speaker.ChannelJoined:connect(function(channel, welcomeMessage)
		local log = nil
		local channelNameColor = nil

		local channelObject = ChatService:GetChannel(channel)
		if (channelObject) then
			log = channelObject:GetHistoryLogForSpeaker(speaker)
			channelNameColor = channelObject.ChannelNameColor
		end
		EventFolder.OnChannelJoined:FireClient(playerObj, channel, welcomeMessage, log, channelNameColor)
	end)

	speaker.Muted:connect(function(channel, reason, length)
		EventFolder.OnMuted:FireClient(playerObj, channel, reason, length)
	end)

	speaker.Unmuted:connect(function(channel)
		EventFolder.OnUnmuted:FireClient(playerObj, channel)
	end)

	ChatService:InternalFireSpeakerAdded(speaker.Name)
end

EventFolder.SayMessageRequest.OnServerEvent:connect(function(playerObj, message, channel)
	if type(message) ~= "string" then
		return
	elseif not validateMessageLength(message) then
		return
	end

	if type(channel) ~= "string" then
		return
	end

	local speaker = ChatService:GetSpeaker(playerObj.Name)
	if (speaker) then
		return speaker:SayMessage(message, channel)
	end

	return nil
end)

EventFolder.MutePlayerRequest.OnServerInvoke = function(playerObj, muteSpeakerName)
	if type(muteSpeakerName) ~= "string" then
		return
	end

	local speaker = ChatService:GetSpeaker(playerObj.Name)
	if speaker then
		local muteSpeaker = ChatService:GetSpeaker(muteSpeakerName)
		if muteSpeaker then
			speaker:AddMutedSpeaker(muteSpeaker.Name)
			return true
		end
	end
	return false
end

EventFolder.UnMutePlayerRequest.OnServerInvoke = function(playerObj, unmuteSpeakerName)
	if type(unmuteSpeakerName) ~= "string" then
		return
	end

	local speaker = ChatService:GetSpeaker(playerObj.Name)
	if speaker then
		local unmuteSpeaker = ChatService:GetSpeaker(unmuteSpeakerName)
		if unmuteSpeaker then
			speaker:RemoveMutedSpeaker(unmuteSpeaker.Name)
			return true
		end
	end
	return false
end


Prompt: --[[Susupension]]

Response:
	Tune.SusEnabled		= true		-- works only in with PGSPhysicsSolverEnabled, defaults to false when PGS is disabled

	--Front Suspension
	Tune.FSusDamping	= 500		-- Spring Dampening
	Tune.FSusStiffness	= 8000		-- 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	= 8000		-- Spring Force
	Tune.FAntiRoll 		= 30		-- 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


Response:
local Vida = script.Parent.Overhaul.Vida
local Consciente = script.Parent.Overhaul.Consciente
local Dor = script.Parent.Overhaul.Dor
local Ferido = script.Parent.Overhaul.Ferido
local Sangrando = script.Parent.Overhaul.Sangrando

local BleedTween = TS:Create(Sangrando, TweenInfo.new(1,Enum.EasingStyle.Linear,Enum.EasingDirection.InOut,-1,true), {TextColor3 =  Color3.fromRGB(255, 0, 0)} )

RS.RenderStepped:connect(function()
	if script.Parent.Visible == true then

	if Target.Value ~= "N/A" then

		local player = game.Players:FindFirstChild(Target.Value)
		local vHuman = player.Character.Humanoid
		local vSang = player.Character.ACS_Client.Variaveis.Sangue

		local pie = (vHuman.Health / vHuman.MaxHealth)
		script.Parent.Menu.Base.VidaBar.Sangue.Size = UDim2.new(1, 0, pie, 0)

		local Pizza = (vSang.Value / vSang.MaxValue)
		script.Parent.Menu.Base.SangueBar.Sangue.Size = UDim2.new(1, 0, Pizza, 0)

	else

		local pie = (Human.Health / Human.MaxHealth)
		script.Parent.Menu.Base.VidaBar.Sangue.Size = UDim2.new(1, 0, pie, 0)

		local Pizza = (Saude.Variaveis.Sangue.Value / Saude.Variaveis.Sangue.MaxValue)
		script.Parent.Menu.Base.SangueBar.Sangue.Size = UDim2.new(1, 0, Pizza, 0)

	end

		if Target.Value == "N/A" then
			if Human.Health <= 0 then
				Vida.Text = "Dead"
				Vida.TextColor3 = Color3.fromRGB(255,0,0)
			elseif Human.Health <= (Human.MaxHealth * .5) then
				Vida.Text = "High Risk"
				Vida.TextColor3 = Color3.fromRGB(255,0,0)
			elseif Human.Health <= (Human.MaxHealth * .75) then
				Vida.Text = "Low Risk"
				Vida.TextColor3 = Color3.fromRGB(255,255,0)
			elseif Human.Health <= (Human.MaxHealth) then
				Vida.Text = "Healthy"
				Vida.TextColor3 = Color3.fromRGB(255,255,255)
			end

			if Saude.Stances.Caido.Value == true then
				Consciente.Text = "Unconscious"
			else
				Consciente.Text = "Conscious"
			end

			if Saude.Variaveis.Dor.Value <= 0 then
				Dor.Text = "No pain"
				Dor.TextColor3 = Color3.fromRGB(255,255,255)
			elseif Saude.Variaveis.Dor.Value <= 25 then
				Dor.Text = "Minor pain"
				Dor.TextColor3 = Color3.fromRGB(255,255,255)
			elseif Saude.Variaveis.Dor.Value < 100 then
				Dor.Text = "Major pain"
				Dor.TextColor3 = Color3.fromRGB(255,255,0)
			elseif Saude.Variaveis.Dor.Value >= 100 then
				Dor.Text = "Extreme pain"
				Dor.TextColor3 = Color3.fromRGB(255,0,0)
			end

			if Saude.Stances.Ferido.Value == true then
				Ferido.Visible = true
			else
				Ferido.Visible = false
			end

			if Saude.Stances.Sangrando.Value == true or Saude.Stances.Tourniquet.Value == true then
				if Saude.Stances.Tourniquet.Value == true then
					Sangrando.Text = 'Tourniquet'
				else
					Sangrando.Text = 'Bleeding'
				end
				Sangrando.Visible = true
				Sangrando.TextColor3 = Color3.fromRGB(255,255,255)
				BleedTween:Play()
			else
				Sangrando.Visible = false
				BleedTween:Cancel()
			end

		else
			local player2 = game.Players:FindFirstChild(Target.Value)
			local PlHuman = player2.Character.Humanoid
			local PlSaude = player2.Character.ACS_Client
			if PlHuman.Health > 0 then
			if PlHuman.Health <= 0 then
				Vida.Text = "Dead"
				Vida.TextColor3 = Color3.fromRGB(255,0,0)
			elseif PlHuman.Health <= (PlHuman.MaxHealth * .5) then
				Vida.Text = "High Risk"
				Vida.TextColor3 = Color3.fromRGB(255,0,0)
			elseif PlHuman.Health <= (PlHuman.MaxHealth * .75) then
				Vida.Text = "Low Risk"
				Vida.TextColor3 = Color3.fromRGB(255,255,0)
			elseif PlHuman.Health <= (PlHuman.MaxHealth) then
				Vida.Text = "Healthy"
				Vida.TextColor3 = Color3.fromRGB(255,255,255)
			end

			if PlSaude.Stances.Caido.Value == true then
				Consciente.Text = "Unconscious"
			else
				Consciente.Text = "Conscious"
			end

			if PlSaude.Variaveis.Dor.Value <= 0 then
				Dor.Text = "No pain"
				Dor.TextColor3 = Color3.fromRGB(255,255,255)
			elseif PlSaude.Variaveis.Dor.Value <= 25 then
				Dor.Text = "Minor pain"
				Dor.TextColor3 = Color3.fromRGB(255,255,255)
			elseif PlSaude.Variaveis.Dor.Value < 100 then
				Dor.Text = "Major pain"
				Dor.TextColor3 = Color3.fromRGB(255,255,0)
			elseif PlSaude.Variaveis.Dor.Value >= 100 then
				Dor.Text = "Extreme pain"
				Dor.TextColor3 = Color3.fromRGB(255,0,0)
			end

			if PlSaude.Stances.Ferido.Value == true then
				Ferido.Visible = true
			else
				Ferido.Visible = false
			end

			if PlSaude.Stances.Sangrando.Value == true or PlSaude.Stances.Tourniquet.Value == true then
				if PlSaude.Stances.Tourniquet.Value == true then
					Sangrando.Text = 'Tourniquet'
				else
					Sangrando.Text = 'Bleeding'
				end
				Sangrando.Visible = true
				Sangrando.TextColor3 = Color3.fromRGB(255,255,255)
				BleedTween:Play()
			else
				Sangrando.Visible = false
				BleedTween:Cancel()
			end
			else
				Reset:FireServer()
			end
		end
	end

end)


Prompt:
--[[**
	Decodes a string from Base64.
	@param [t:string] Input The input string to decode.
	@returns [t:string] The newly decoded string.
**--]]

Response:
function Base64.Decode(Input)
	local Output = {}
	local Length = 0

	for Index = 1, #Input, 4 do
		local C1, C2, C3, C4 = string.byte(Input, Index, Index + 3)

		local I1 = Indexes[C1] - 1
		local I2 = Indexes[C2] - 1
		local I3 = (Indexes[C3] or 1) - 1
		local I4 = (Indexes[C4] or 1) - 1

		local A = bit32_lshift(I1, 2) + bit32_rshift(I2, 4)
		local B = bit32_lshift(bit32_band(I2, 15), 4) + bit32_rshift(I3, 2)
		local C = bit32_lshift(bit32_band(I3, 3), 6) + I4

		Length = Length + 1
		Output[Length] = A

		if C3 ~= 61 then
			Length = Length + 1
			Output[Length] = B
		end

		if C4 ~= 61 then
			Length = Length + 1
			Output[Length] = C
		end
	end

	local NewOutput = {}
	local NewLength = 0
	local IndexAdd4096Sub1

	for Index = 1, Length, 4096 do
		NewLength = NewLength + 1
		IndexAdd4096Sub1 = Index + 4096 - 1

		NewOutput[NewLength] = string.char(table.unpack(
			Output,
			Index,
			IndexAdd4096Sub1 > Length and Length or IndexAdd4096Sub1
		))
	end

	return table.concat(NewOutput)
end

return Base64


Prompt: -- Load default environment

Response:
if workspace.Areas:FindFirstChildOfClass("Folder") then
	require(updateEnvironment).LoadArea(workspace.Areas:FindFirstChildOfClass("Folder").Name)
end

game:GetService("RunService"):BindToRenderStep("UI", 50, function() -- Update and animate health UI
	if players.LocalPlayer.Character and players.LocalPlayer.Character:FindFirstChild("Humanoid") then
		if players.LocalPlayer.Character.Humanoid.Health/players.LocalPlayer.Character.Humanoid.MaxHealth >= 0.998 then
			healthFill.UIGradient.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0, 0), NumberSequenceKeypoint.new(1, 0)})
		elseif players.LocalPlayer.Character.Humanoid.Health/players.LocalPlayer.Character.Humanoid.MaxHealth <= 0.001 then
			healthFill.UIGradient.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0, 1), NumberSequenceKeypoint.new(1, 1)})
		else
			healthFill.UIGradient.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0, 0), NumberSequenceKeypoint.new(players.LocalPlayer.Character.Humanoid.Health/players.LocalPlayer.Character.Humanoid.MaxHealth, 0), NumberSequenceKeypoint.new(math.clamp((players.LocalPlayer.Character.Humanoid.Health/players.LocalPlayer.Character.Humanoid.MaxHealth)+0.001, (players.LocalPlayer.Character.Humanoid.Health/players.LocalPlayer.Character.Humanoid.MaxHealth)+0.001, 0.999), 1), NumberSequenceKeypoint.new(1, 1)})
		end
		healthFill.Parent.LifeLabel.Text = math.floor(players.LocalPlayer.Character.Humanoid.Health)
		healthFill.UIGradient.Rotation = healthFill.UIGradient.Rotation - 1
		healthFill.Rotation = healthFill.Rotation + 1
		if lastHealth > players.LocalPlayer.Character.Humanoid.Health then
			DamageEffect(lastHealth/players.LocalPlayer.Character.Humanoid.MaxHealth, (lastHealth-players.LocalPlayer.Character.Humanoid.Health)/players.LocalPlayer.Character.Humanoid.MaxHealth, lastHealth-players.LocalPlayer.Character.Humanoid.Health)
		end
		lastHealth = players.LocalPlayer.Character.Humanoid.Health
	end
	-- Update other stuff in UI
	if players.LocalPlayer.Stats.Rank.Value >= rankCap.Value then
		rankLabel.TextColor3 = Color3.fromRGB(255, 255, 0)
	else
		rankLabel.TextColor3 = Color3.fromRGB(255, 255, 255)
	end
	if players.LocalPlayer.Stats.Mana.Value >= GetManaCap() then
		manaLabel.TextColor3 = Color3.fromRGB(255, 255, 0)
	else
		manaLabel.TextColor3 = Color3.fromRGB(255, 255, 255)
	end
	rankLabel.Text = players.LocalPlayer.Stats.Rank.Value
	goldLabel.Text = players.LocalPlayer.Stats.Gold.Value
	arrowsLabel.Text = players.LocalPlayer.Stats.Arrows.Value
	manaLabel.Text = players.LocalPlayer.Stats.Mana.Value
	rankBar.Parent.Label.Text = players.LocalPlayer.Stats.XP.Value .. "/" .. replicatedStorage.ServerSettings.XPPerRank.Value * players.LocalPlayer.Stats.Rank.Value .. " XP"
	rankBar.Position = UDim2.new((players.LocalPlayer.Stats.XP.Value / (replicatedStorage.ServerSettings.XPPerRank.Value * players.LocalPlayer.Stats.Rank.Value)) - 1, 0, 0, 0)
	rankBar.Fill.Position = UDim2.new(1 - players.LocalPlayer.Stats.XP.Value / (replicatedStorage.ServerSettings.XPPerRank.Value * players.LocalPlayer.Stats.Rank.Value), 0, 0, 0)
end)