Prompt: --// Function stuff

Response:
return function(Vargs, GetEnv)
	local env = GetEnv(nil, {script = script})
	setfenv(1, env)

	local server = Vargs.Server
	local service = Vargs.Service

	local cPcall = env.cPcall

	local logError
	local Functions, Admin, Anti, Core, HTTP, Logs, Remote, Process, Variables, Settings
	local function Init()
		Functions = server.Functions;
		Admin = server.Admin;
		Anti = server.Anti;
		Core = server.Core;
		HTTP = server.HTTP;
		Logs = server.Logs;
		Remote = server.Remote;
		Process = server.Process;
		Variables = server.Variables;
		Settings = server.Settings;
		logError = server.logError;

		Functions.Init = nil
		Logs:AddLog("Script", "Functions Module Initialized")
	end;

	local function RunAfterPlugins(data)
		--// AutoClean
		if Settings.AutoClean then
			service.StartLoop("AUTO_CLEAN", Settings.AutoCleanDelay, Functions.CleanWorkspace, true)
		end

		Functions.RunAfterPlugins = nil
		Logs:AddLog("Script", "Functions Module RunAfterPlugins Finished")
	end

	server.Functions = {
		Init = Init;
		RunAfterPlugins = RunAfterPlugins;
		PlayerFinders = {
			["me"] = {
				Match = "me";
				Prefix = true;
				Absolute = true;
				Function = function(msg, plr, parent, players, delplayers, addplayers, randplayers, getplr, plus, isKicking, useFakePlayer, allowUnknownUsers)
					table.insert(players, plr)
					plus()
				end;
			};

			["all"] = {
				Match = "all";
				Prefix = true;
				Absolute = true;
				Function = function(msg, plr, parent, players, delplayers, addplayers, randplayers, getplr, plus, isKicking, useFakePlayer, allowUnknownUsers)
					local everyone = true
					if isKicking then
						local lower = string.lower
						local sub = string.sub

						for _,v in parent:GetChildren() do
							local p = getplr(v)
							if p and sub(lower(p.Name), 1, #msg)==lower(msg) then
								everyone = false
								table.insert(players, p)
								plus()
							end
						end
					end

					if everyone then
						for _,v in parent:GetChildren() do
							local p = getplr(v)
							if p then
								table.insert(players, p)
								plus()
							end
						end
					end
				end;
			};

			["everyone"] = {
				Match = "everyone";
				Absolute = true;
				Pefix = true;
				Function = function(...)
					return Functions.PlayerFinders.all.Function(...)
				end
			};

			["others"] = {
				Match = "others";
				Prefix = true;
				Absolute = true;
				Function = function(msg, plr, parent, players, delplayers, addplayers, randplayers, getplr, plus, isKicking, useFakePlayer, allowUnknownUsers)
					for _,v in parent:GetChildren() do
						local p = getplr(v)
						if p and p ~= plr then
							table.insert(players, p)
							plus()
						end
					end
				end;
			};

			["random"] = {
				Match = "random";
				Prefix = true;
				Absolute = true;
				Function = function(msg, plr, parent, players, delplayers, addplayers, randplayers, getplr, plus, isKicking, useFakePlayer, allowUnknownUsers)
					table.insert(randplayers, "random")
					plus()
				end;
			};

			["admins"] = {
				Match = "admins";
				Prefix = true;
				Absolute = true;
				Function = function(msg, plr, parent, players, delplayers, addplayers, randplayers, getplr, plus, isKicking, useFakePlayer, allowUnknownUsers)
					for _,v in parent:GetChildren() do
						local p = getplr(v)
						if p and Admin.CheckAdmin(p,false) then
							table.insert(players, p)
							plus()
						end
					end
				end;
			};

			["nonadmins"] = {
				Match = "nonadmins";
				Prefix = true;
				Absolute = true;
				Function = function(msg, plr, parent, players, delplayers, addplayers, randplayers, getplr, plus, isKicking, useFakePlayer, allowUnknownUsers)
					for _,v in parent:GetChildren() do
						local p = getplr(v)
						if p and not Admin.CheckAdmin(p,false) then
							table.insert(players, p)
							plus()
						end
					end
				end;
			};

			["friends"] = {
				Match = "friends";
				Prefix = true;
				Absolute = true;
				Function = function(msg, plr, parent, players, delplayers, addplayers, randplayers, getplr, plus, isKicking, useFakePlayer, allowUnknownUsers)
					for _,v in parent:GetChildren() do
						local p = getplr(v)
						if p and p:IsFriendsWith(plr.UserId) then
							table.insert(players, p)
							plus()
						end
					end
				end;
			};

			["@username"] = {
				Match = "@";
				Prefix = false;
				Function = function(msg, plr, parent, players, delplayers, addplayers, randplayers, getplr, plus, isKicking, useFakePlayer, allowUnknownUsers)
					local matched = string.match(msg, "@(.*)")
					local foundNum = 0

					if matched then
						for _,v in parent:GetChildren() do
							local p = getplr(v)
							if p and p.Name == matched then
								table.insert(players, p)
								plus()
								foundNum += 1
							end
						end
					end
				end;
			};

			["%team"] = {
				Match = "%";
				Function = function(msg, plr, parent, players, delplayers, addplayers, randplayers, getplr, plus, isKicking, useFakePlayer, allowUnknownUsers)
					local matched = string.match(msg, "%%(.*)")

					local lower = string.lower
					local sub = string.sub

					if matched then
						for _,v in service.Teams:GetChildren() do
							if sub(lower(v.Name), 1, #matched) == lower(matched) then
								for _,m in parent:GetChildren() do
									local p = getplr(m)
									if p and p.TeamColor == v.TeamColor then
										table.insert(players, p)
										plus()
									end
								end
							end
						end
					end
				end;
			};

			["$group"] = {
				Match = "$";
				Function = function(msg, plr, parent, players, delplayers, addplayers, randplayers, getplr, plus, isKicking, useFakePlayer, allowUnknownUsers)
					local matched = string.match(msg, "%$(.*)")
					if matched and tonumber(matched) then
						for _,v in parent:GetChildren() do
							local p = getplr(v)
							if p and p:IsInGroup(tonumber(matched)) then
								table.insert(players, p)
								plus()
							end
						end
					end
				end;
			};

			["id-"] = {
				Match = "id-";
				Function = function(msg, plr, parent, players, delplayers, addplayers, randplayers, getplr, plus, isKicking, useFakePlayer, allowUnknownUsers)
					local matched = tonumber(string.match(msg, "id%-(.*)"))
					local foundNum = 0
					if matched then
						for _,v in parent:GetChildren() do
							local p = getplr(v)
							if p and p.UserId == matched then
								table.insert(players, p)
								plus()
								foundNum += 1
							end
						end

						if foundNum == 0 and useFakePlayer then
							local ran, name = pcall(service.Players.GetNameFromUserIdAsync, service.Players, matched)
							if ran or allowUnknownUsers then
								local fakePlayer = Functions.GetFakePlayer({
									UserId = matched,
									Name = name,
								})
								table.insert(players, fakePlayer)
								plus()
							end
						end
					end
				end;
			};

			["displayname-"] = {
				Match = "displayname-";
				Function = function(msg, plr, parent, players, delplayers, addplayers, randplayers, getplr, plus, isKicking, useFakePlayer, allowUnknownUsers)
					local matched = tostring(string.match(msg, "displayname%-(.*)"))
					local foundNum = 0

					if matched then
						for _,v in parent:GetChildren() do
							local p = getplr(v)
							if p and p.DisplayName == matched then
								table.insert(players, p)
								plus()
								foundNum += 1
							end
						end
					end
				end;
			};

			["team-"] = {
				Match = "team-";
				Function = function(msg, plr, parent, players, delplayers, addplayers, randplayers, getplr, plus, isKicking, useFakePlayer, allowUnknownUsers)
					local lower = string.lower
					local sub = string.sub

					local matched = string.match(msg, "team%-(.*)")
					if matched then
						for _,v in service.Teams:GetChildren() do
							if sub(lower(v.Name), 1, #matched) == lower(matched) then
								for _,m in parent:GetChildren() do
									local p = getplr(m)
									if p and p.TeamColor == v.TeamColor then
										table.insert(players, p)
										plus()
									end
								end
							end
						end
					end
				end;
			};

			["group-"] = {
				Match = "group-";
				Function = function(msg, plr, parent, players, delplayers, addplayers, randplayers, getplr, plus, isKicking, useFakePlayer, allowUnknownUsers)
					local matched = string.match(msg, "group%-(.*)")
					matched = tonumber(matched)

					if matched then
						for _,v in parent:GetChildren() do
							local p = getplr(v)
							if p and p:IsInGroup(matched) then
								table.insert(players, p)
								plus()
							end
						end
					end
				end;
			};

			["-name"] = {
				Match = "-";
				Function = function(msg, plr, parent, players, delplayers, addplayers, randplayers, getplr, plus, isKicking, useFakePlayer, allowUnknownUsers)
					local matched = string.match(msg, "%-(.*)")
					if matched then
						local removes = service.GetPlayers(plr,matched, {
							DontError = true;
						})

						for k,p in removes do
							if p then
								table.insert(delplayers,p)
								plus()
							end
						end
					end
				end;
			};

			["+name"] = {
				Match = "+";
				Function = function(msg, plr, parent, players, delplayers, addplayers, randplayers, getplr, plus, isKicking, useFakePlayer, allowUnknownUsers)
					local matched = string.match(msg, "%+(.*)")
					if matched then
						local adds = service.GetPlayers(plr,matched, {
							DontError = true;
						})

						for k,p in adds do
							if p then
								table.insert(addplayers,p)
								plus()
							end
						end
					end
				end;
			};

			["#number"] = {
				Match = "#";
				Function = function(msg, plr, ...)
					local matched = msg:match("%#(.*)")
					if matched and tonumber(matched) then
						local num = tonumber(matched)
						if not num then
							Remote.MakeGui(plr,'Output',{Title = 'Output'; Message = "Invalid number!"})
							return;
						end

						for i = 1,num do
							Functions.PlayerFinders.random.Function(msg, plr, ...)
						end
					end
				end;
			};

			["radius-"] = {
				Match = "radius-";
				Function = function(msg, plr, parent, players, delplayers, addplayers, randplayers, getplr, plus, isKicking, useFakePlayer, allowUnknownUsers)
					local matched = msg:match("radius%-(.*)")
					if matched and tonumber(matched) then
						local num = tonumber(matched)
						if not num then
							Remote.MakeGui(plr, "Output", {Message = "Invalid number!"})
							return;
						end

						for _,v in parent:GetChildren() do
							local p = getplr(v)
							if p and p ~= plr and plr:DistanceFromCharacter(p.Character.Head.Position) <= num then
								table.insert(players,p)
								plus()
							end
						end
					end
				end;
			};
		};

		CatchError = function(func, ...)
			local ret = {pcall(func, ...)}

			if not ret[1] then
				logError(ret[2] or "Unknown error occurred")
			else
				return unpack(ret, 2)
			end
		end;

		GetFakePlayer = function(options)
			local fakePlayer = service.Wrap(service.New("Folder", {
				Name = options.Name or "Fake_Player";
			}))

			local data = {
				ClassName = "Player";
				Name = "[Unknown User]";
				DisplayName = "[Unknown User]";
				UserId = 0;
				AccountAge = 0;
				MembershipType = Enum.MembershipType.None;
				CharacterAppearanceId = if options.UserId then tostring(options.UserId) else "0";
				FollowUserId = 0;
				GameplayPaused = false;
				Parent = service.Players;
				Character = service.New("Model", {Name = options.Name or "Fake_Player"});
				Backpack = service.New("Folder", {Name = "FakeBackpack"});
				PlayerGui = service.New("Folder", {Name = "FakePlayerGui"});
				PlayerScripts = service.New("Folder", {Name = "FakePlayerScripts"});
				GetJoinData = function() return {} end;
				GetFriendsOnline = function() return {} end;
				GetRankInGroup = function() return 0 end;
				GetRoleInGroup = function() return "Guest" end;
				IsFriendsWith = function() return false end;
				Kick = function() fakePlayer:Destroy() fakePlayer:SetSpecial("Parent", nil) end;
				IsA = function(_, className) return className == "Player" end;
			}

			for i, v in options do
				data[i] = v
			end

			if data.UserId ~= -1 then
				local success, actualName = pcall(service.Players.GetNameFromUserIdAsync, service.Players, data.UserId)
				if success then
					data.Name = actualName
				end
			end

			data.userId = data.UserId
			data.ToString = data.Name

			for i, v in data do
				fakePlayer:SetSpecial(i, v)
			end

			return fakePlayer
		end;

		GetChatService = function()
			local chatHandler = service.ServerScriptService:WaitForChild("ChatServiceRunner", 120)
			local chatMod = chatHandler and chatHandler:WaitForChild("ChatService", 120)

			if chatMod then
				return require(chatMod)
			end
			return nil
		end;

		IsClass = function(obj, classList)
			for _,class in classList do
				if obj:IsA(class) then
					return true
				end
			end
			return false
		end;

		ArgsToString = function(args)
			local str = ""
			for i, arg in args do
				str ..= "Arg"..tostring(i)..": "..tostring(arg).."; "
			end
			return str:sub(1, -3)
		end;

		GetPlayers = function(plr, argument, options)
			options = options or {}

			local parent = options.Parent or service.Players
			local players = {}
			local delplayers = {}
			local addplayers = {}
			local randplayers = {}

			local function getplr(p)
				if p then
					if p.ClassName == "Player" then
						return p
					elseif p:IsA("NetworkReplicator") then
						local networkPeerPlayer = p:GetPlayer()
						if networkPeerPlayer and networkPeerPlayer.ClassName == "Player" then
							return networkPeerPlayer
						end
					end
				end
				return nil
			end

			local function checkMatch(msg)
				msg = string.lower(msg)
				local doReturn
				local PlrLevel = if plr then Admin.GetLevel(plr) else 0

				for _, data in Functions.PlayerFinders do
					if not data.Level or (data.Level and PlrLevel >= data.Level) then
						local check = ((data.Prefix and Settings.SpecialPrefix) or "")..data.Match
						if (data.Absolute and msg == check) or (not data.Absolute and string.sub(msg, 1, #check) == string.lower(check)) then
							if data.Absolute then
								return data
							else --// Prioritize absolute matches over non-absolute matches
								doReturn = data
							end
						end
					end
				end

				return doReturn
			end

			if plr == nil then
				--// Select all players
				for _, v in parent:GetChildren() do
					local p = getplr(v)
					if p then
						table.insert(players, p)
					end
				end
			elseif plr and not argument then
				--// Default to the executor ("me")
				return {plr}
			else
				if argument:match("^##") then
					error("String passed to GetPlayers is filtered: ".. tostring(argument), 2)
				end

				for s in argument:gmatch("([^,]+)") do
					local plrCount = 0
					local function plus() plrCount += 1 end

					if not options.NoSelectors then
						local matchFunc = checkMatch(s)
						if matchFunc then
							matchFunc.Function(
								s,
								plr,
								parent,
								players,
								delplayers,
								addplayers,
								randplayers,
								getplr,
								plus,
								options.IsKicking,
								options.IsServer,
								options.DontError,
								not options.NoFakePlayer,
								options.AllowUnknownUsers
							)
						end
					end

					if plrCount == 0 then
						--// Check for display names
						for _, v in parent:GetChildren() do
							local p = getplr(v)
							if p and p.ClassName == "Player" and p.DisplayName:lower():match("^"..s:lower()) then
								table.insert(players, p)
								plus()
							end
						end

						if plrCount == 0 then
							--// Check for usernames
							for _, v in parent:GetChildren() do
								local p = getplr(v)
								if p and p.ClassName == "Player" and p.Name:lower():match("^"..s:lower()) then
									table.insert(players, p)
									plus()
								end
							end

							if plrCount == 0 then
								if not options.NoFakePlayer then
									--// Attempt to retrieve non-ingame user

									local UserId = Functions.GetUserIdFromNameAsync(s)
									if UserId or options.AllowUnknownUsers then
										table.insert(players, Functions.GetFakePlayer({
											Name = s;
											DisplayName = s;
											UserId = UserId or -1;
										}))
										plus()
									end
								end

								if plrCount == 0 and not options.DontError then
									Remote.MakeGui(plr, "Output", {
										Message = if not options.NoFakePlayer then "No user named '"..s.."' exists"
											else "No players matching '"..s.."' were found!";
									})
								end
							end
						end
					end
				end
			end

			--// The following is intended to prevent name spamming (eg. :re scel,scel,scel,scel,scel,scel,scel,scel,scel,scel,scel,scel,scel,scel...)
			--// It will also prevent situations where a player falls within multiple player finders (eg. :re group-1928483,nonadmins,radius-50 (one player can match all 3 of these))
			--// Edited to adjust removals and randomizers.

			local filteredList = {}
			local checkList = {}

			for _, v in players do
				if not checkList[v] then
					table.insert(filteredList, v)
					checkList[v] = true
				end
			end

			local delFilteredList = {}
			local delCheckList = {}

			for _, v in delplayers do
				if not delCheckList[v] then
					table.insert(delFilteredList, v)
					delCheckList[v] = true
				end
			end

			local addFilteredList = {}
			local addCheckList = {}

			for _, v in addplayers do
				if not addCheckList[v] then
					table.insert(addFilteredList, v)
					addCheckList[v] = true
				end
			end

			local removalSuccessList = {}

			for i, v in filteredList do
				for j, w in delFilteredList do
					if v.Name == w.Name then
						table.remove(filteredList,i)
						table.insert(removalSuccessList, w)
					end
				end
			end

			for j, w in addFilteredList do
				table.insert(filteredList, w)
			end

			local checkList2 = {}
			local finalFilteredList = {}

			for _, v in filteredList do
				if not checkList2[v] then
					table.insert(finalFilteredList, v)
					checkList2[v] = true
				end
			end

			local comboTableCheck = {}

			for _, v in finalFilteredList do
				table.insert(comboTableCheck, v)
			end
			for _, v in delFilteredList do
				table.insert(comboTableCheck, v)
			end

			local function rplrsort()
				local children = parent:GetChildren()
				local childcount = #children
				local excludecount = #comboTableCheck
				if excludecount < childcount then
					local rand = children[math.random(#children)]
					local rp = getplr(rand)

					for _, v in comboTableCheck do
						if v.Name == rp.Name then
							rplrsort()
							return
						end
					end

					table.insert(finalFilteredList, rp)

					local comboTableCheck = {}
					for _, v in finalFilteredList do
						table.insert(comboTableCheck, v)
					end
					for _, v in delFilteredList do
						table.insert(comboTableCheck, v)
					end
				end
			end

			for i, v in randplayers do
				rplrsort()
			end

			return finalFilteredList
		end;

		GetRandom = function(pLen)
			--local str = ""
			--for i=1,math.random(5,10) do str=str..string.char(math.random(33,90)) end
			--return str

			local random = math.random
			local format = string.format

			local res = {}
			for i = 1, if type(pLen) == "number" then pLen else random(5, 10) do
				res[i] = format("%02x", random(126))
			end
			return table.concat(res)
		end;

		AdonisEncrypt = function(key)
			local ae_info = {
				version = "1";
				ver_codename = "aencrypt_xorB64";
				ver_full = "v1_AdonisEncrypt";
			}

			--return "adonis:enc;;"..ver..";;"..Base64Encode(string.char(unpack(t)))
			return {
				encrypt = function(data)
					-- Add as many layers of encryption that are useful, even a basic cipher that throws exploiters off the actual encrypted data is accepted.
					-- What could count: XOR, Base64, Simple Encryption, A Cipher to cover the encryption, etc.
					-- What would be too complex: AES-256 CTR-Mode, Base91, PGP/Pretty Good Privacy

					-- TO:DO; - Script XOR + Custom Encryption Backend, multiple security measures, if multiple encryption layers are used,
					--          manipulate the key as much as possible;
					--
					--        - Create Custom Lightweight Encoding + Cipher format, custom B64 Alphabet, etc.
					--          'ADONIS+HUJKLMSBP13579VWXYZadonis/hujklmsbp24680vwxyz><_*+-?!&@%#'
					--
					--        - A basic form of string compression before encrypting should be used
					--          If this becomes really nice, find a way to convert old datastore saved data to this new format.
					--
					--        ? This new format has an URI-Like structure to provide correct versioning and easy migrating between formats

					--[[ INSERT ALREADY USED ADONIS "ENCRYPTION" HERE ]]
					--[[ INSERT BIT32 BITWISE XOR OPERAND HERE]]
					--[[ INSERT ROT47 CIPHER HERE ]]
					--[[ INSERT CUSTOM ADONIS BASE64 ENCODING HERE ]]
					--[[ CONVERT EVERYTHING TO AN URI WITH VERSIONING AND INFORMATION ]]

				end;

				decrypt = function(data)

				end;
			}
		end;

		-- ROT 47: ROT13 BUT BETTER
		Rot47Cipher = function(data,mode)
			if not (mode == "enc" or mode == "dec") then error("Invalid ROT47 Cipher Mode") end

			local base = 33
			local range = 126 - 33 + 1

			-- Checks if the given char is convertible
			-- ASCII Code should be within the range [33 .. 126]
			local function rot47_convertible(char)
				local v = string.byte(char)
				return v >= 33 and v <= 126
			end

			local function cipher(str, key)
				return (string.gsub(str, '.', function(s)
					if not rot47_convertible(s) then return s end
					return string.char(((string.byte(s) - base + key) % range) + base)
				end))
			end
			if mode == "enc" then return cipher(data,47) end
			if mode == "dec" then return cipher(data,-47) end
		end;

		-- CUSTOM BASE64 ALPHABET ENCODING
		Base64_A_Decode = function(data)
			local sub = string.sub
			local gsub = string.gsub
			local find = string.find
			local char = string.char
			local b = 'ADONIS+HUJKLMSBP13579VWXYZadonis/hujklmsbp24680vwxyz><_*+-?!&@%#'

			data = gsub(data, '[^'..b..'=]', '')
			return (gsub(gsub(data, '.', function(x)
				if x == '=' then
					return ''
				end
				local r, f = '', (find(b, x) - 1)
				for i = 6, 1, -1 do
					r ..= (f % 2 ^ i - f % 2 ^ (i - 1) > 0 and '1' or '0')
				end
				return r;
			end), '%d%d%d?%d?%d?%d?%d?%d?', function(x)
				if #x ~= 8 then
					return ''
				end
				local c = 0
				for i = 1, 8 do
					c += (sub(x, i, i) == '1' and 2 ^ (8 - i) or 0)
				end
				return char(c)
			end))
		end;

		Base64_A_Encode = function(data)
			local sub = string.sub
			local byte = string.byte
			local gsub = string.gsub

			return (gsub(gsub(data, '.', function(x)
				local r, b = "", byte(x)
				for i = 8, 1, -1 do
					r ..= (b % 2 ^ i - b % 2 ^ (i - 1) > 0 and '1' or '0')
				end
				return r;
			end) .. '0000', '%d%d%d?%d?%d?%d?', function(x)
				if #(x) < 6 then
					return ''
				end
				local c = 0
				for i = 1, 6 do
					c += (sub(x, i, i) == '1' and 2 ^ (6 - i) or 0)
				end
				return sub('ADONIS+HUJKLMSBP13579VWXYZadonis/hujklmsbp24680vwxyz><_*+-?!&@%#', c + 1, c + 1)
			end)..({
				'',
				'==',
				'='
			})[#(data) % 3 + 1])
		end;
		--

		Base64Encode = function(data)
			local sub = string.sub
			local byte = string.byte
			local gsub = string.gsub

			return (gsub(gsub(data, '.', function(x)
				local r, b = "", byte(x)
				for i = 8, 1, -1 do
					r ..= (b % 2 ^ i - b % 2 ^ (i - 1) > 0 and '1' or '0')
				end
				return r;
			end) .. '0000', '%d%d%d?%d?%d?%d?', function(x)
				if #(x) < 6 then
					return ''
				end
				local c = 0
				for i = 1, 6 do
					c += (sub(x, i, i) == '1' and 2 ^ (6 - i) or 0)
				end
				return sub('ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/', c + 1, c + 1)
			end)..({
				'',
				'==',
				'='
			})[#(data) % 3 + 1])
		end;

		Base64Decode = function(data)
			local sub = string.sub
			local gsub = string.gsub
			local find = string.find
			local char = string.char

			local b = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'

			data = gsub(data, '[^'..b..'=]', '')
			return (gsub(gsub(data, '.', function(x)
				if x == '=' then
					return ''
				end
				local r, f = '', (find(b, x) - 1)
				for i = 6, 1, -1 do
					r ..= (f % 2 ^ i - f % 2 ^ (i - 1) > 0 and '1' or '0')
				end
				return r;
			end), '%d%d%d?%d?%d?%d?%d?%d?', function(x)
				if #x ~= 8 then
					return ''
				end
				local c = 0
				for i = 1, 8 do
					c += (sub(x, i, i) == '1' and 2 ^ (8 - i) or 0)
				end
				return char(c)
			end))
		end;

		Hint = function(message, players, duration)
			duration = duration or (#tostring(message) / 19 + 2.5)

			for _, v in players do
				Remote.MakeGui(v, "Hint", {
					Message = message;
					Time = duration;
				})
			end
		end;

		Message = function(title, message, players, scroll, duration)
			duration = duration or (#tostring(message) / 19) + 2.5

			for _, v in players do
				task.defer(function()
					Remote.RemoveGui(v, "Message")
					Remote.MakeGui(v, "Message", {
						Title = title;
						Message = message;
						Scroll = scroll;
						Time = duration;
					})
				end)
			end
		end;

		Notify = function(title, message, players, duration)
			duration = duration or (#tostring(message) / 19) + 2.5

			for _, v in players do
				task.defer(function()
					Remote.RemoveGui(v, "Notify")
					Remote.MakeGui(v, "Notify", {
						Title = title;
						Message = message;
						Time = duration;
					})
				end)
			end
		end;

		Notification = function(title, message, players, duration, icon)
			for _, v in players do
				Remote.MakeGui(v, "Notification", {
					Title = title;
					Message = message;
					Time = duration;
					Icon = server.MatIcons[icon or "Info"];
				})
			end
		end;

		MakeWeld = function(a, b)
			local weld = service.New("ManualWeld")
			weld.Part0 = a
			weld.Part1 = b
			weld.C0 = a.CFrame:Inverse() * b.CFrame
			weld.Parent = a
			return weld
		end;

		SetLighting = function(prop,value)
			if service.Lighting[prop] ~= nil then
				service.Lighting[prop] = value
				Variables.LightingSettings[prop] = value
				for _, p in service.GetPlayers() do
					Remote.SetLighting(p, prop, value)
				end
			end
		end;

		LoadEffects = function(plr)
			for i, v in Variables.LocalEffects do
				if (v.Part and v.Part.Parent) or v.NoPart then
					if v.Type == "Cape" then
						Remote.Send(plr, "Function", "NewCape", v.Data)
					elseif v.Type == "Particle" then
						Remote.NewParticle(plr, v.Part, v.Class, v.Props)
					end
				else
					Variables.LocalEffects[i] = nil
				end
			end
		end;

		NewParticle = function(target, particleType, props)
			local ind = Functions.GetRandom()
			Variables.LocalEffects[ind] = {
				Part = target;
				Class = particleType;
				Props = props;
				Type = "Particle";
			}
			for _, v in service.Players:GetPlayers() do
				Remote.NewParticle(v, target, particleType, props)
			end
		end;

		RemoveParticle = function(target,name)
			for i, v in Variables.LocalEffects do
				if v.Type == "Particle" and v.Part == target and (v.Props.Name == name or v.Class == name) then
					Variables.LocalEffects[i] = nil
				end
			end
			for _, v in service.Players:GetPlayers() do
				Remote.RemoveParticle(v, target, name)
			end
		end;

		UnCape = function(plr)
			for i, v in Variables.LocalEffects do
				if v.Type == "Cape" and v.Player == plr then
					Variables.LocalEffects[i] = nil
				end
			end
			for _, v in service.Players:GetPlayers() do
				Remote.Send(v, "Function", "RemoveCape", plr.Character)
			end
		end;

		Cape = function(player,isdon,material,color,decal,reflect)
			material = material or "Neon"
			if not Functions.GetEnumValue(Enum.Material, material) then
				error("Invalid material value")
			end

			Functions.UnCape(player)
			local torso = player.Character:FindFirstChild("HumanoidRootPart")
			if torso then
				if type(color) == "table" then
					color = Color3.new(unpack(color))
				end

				local data = {
					Color = color;
					Parent = player.Character;
					Material = material;
					Reflectance = reflect;
					Decal = decal;
				}

				if isdon and Settings.DonorCapes and Settings.LocalCapes then
					Remote.Send(player, "Function", "NewCape", data)
				else
					local ind = Functions.GetRandom()
					Variables.LocalEffects[ind] = {
						Player = player;
						Part = player.Character.HumanoidRootPart;
						Data = data;
						Type = "Cape";
					}
					for _, v in service.Players:GetPlayers() do
						Remote.Send(v, "Function", "NewCape", data)
					end
				end
			end
		end;

		PlayAnimation = function(player, animId)
			if player.Character and tonumber(animId) then
				local human = player.Character:FindFirstChildOfClass("Humanoid")
				if human and not human:FindFirstChildOfClass("Animator") then
					service.New("Animator", human)
				end
				Remote.Send(player,"Function","PlayAnimation",animId)
			end
		end;

		GetEnumValue = function(enum, item)
			local valid = false
			for _,v in enum:GetEnumItems() do
				if v.Name == item then
					valid = v.Value
					break
				end
			end
			return valid
		end;

		ApplyBodyPart = function(character, model)
			-- NOTE: Use HumanoidDescriptions to apply body parts where possible, unless applying custom parts

			local humanoid = character:FindFirstChildOfClass("Humanoid")
			if humanoid then
				local rigType = humanoid.RigType == Enum.HumanoidRigType.R6 and "R6" or "R15"
				local part = model:FindFirstChild(rigType)

				if not part and rigType == "R15" then
					part = model:FindFirstChild("R15Fixed")
				end

				if part then
					if rigType == "R6" then
						local children = character:GetChildren()
						for _,v in part:GetChildren() do
							for _,x in children do
								if x:IsA("CharacterMesh") and x.BodyPart == v.BodyPart then
									x:Destroy()
								end
							end
							v:Clone().Parent = character
						end
					elseif rigType == "R15" then
						for _,v in part:GetChildren() do
							local value = Functions.GetEnumValue(Enum.BodyPartR15, v.Name)
							if value then
								humanoid:ReplaceBodyPartR15(value, v:Clone())
							end
						end
					end
				end
			end
		end;

		makeRobot = function(player, num, health, speed, damage, walk, attack, friendly)
			local Deps = server.Deps

			local char = player.Character
			local torso = char:FindFirstChild("HumanoidRootPart") or char.PrimaryPart
			local pos = torso.CFrame

			local clone
			char.Archivable = true
			clone = char:Clone()
			char.Archivable = false

			for i = 1, num do
				local new = clone:Clone()
				local hum = new:FindFirstChildOfClass("Humanoid")

				local brain = Deps.Assets.BotBrain:Clone()
				local event = brain.Event

				local oldAnim = new:FindFirstChild("Animate")
				local isR15 = hum.RigType == "R15"
				local anim = isR15 and Deps.Assets.R15Animate:Clone() or Deps.Assets.R6Animate:Clone()

				new.Name = player.Name
				new.HumanoidRootPart.CFrame = pos*CFrame.Angles(0, math.rad((360/num)*i), 0) * CFrame.new((num*0.2)+5, 0, 0)

				hum.WalkSpeed = speed
				hum.MaxHealth = health
				hum.Health = health

				if oldAnim then
					oldAnim:Destroy()
				end

				anim.Parent = new
				brain.Parent = new

				anim.Disabled = false
				brain.Disabled = false
				new.Parent = workspace

				wait()

				event:Fire("SetSetting", {
					Creator = player;
					Friendly = friendly;
					TeamColor = player.TeamColor;
					Attack = attack;
					Swarm = attack;
					Walk = walk;
					Damage = damage;
					Health = health;
					WalkSpeed = speed;
					SpecialKey = math.random();
				})

				if walk then
					event:Fire("Init")
				end

				table.insert(Variables.Objects, new)
			end
		end,

		GetJoints = function(character)
			local temp = {}
			for _,v in character:GetDescendants() do
				if v:IsA("Motor6D") then
					temp[v.Name] = v -- assumes no 2 joints have the same name, hopefully this wont cause issues
				end
			end
			return temp
		end;

		ResetReplicationFocus = function(player)
			--if not workspace.StreamingEnabled then return end
			local rootPart = player.Character and player.Character.PrimaryPart
			player.ReplicationFocus = rootPart or nil
		end;

		LoadOnClient = function(player,source,object,name)
			if service.Players:FindFirstChild(player.Name) then
				local parent = player:FindFirstChildOfClass("PlayerGui") or player:WaitForChild("PlayerGui", 15) or player:WaitForChild("Backpack")
				local cl = Core.NewScript("LocalScript", source)
				cl.Name = name or Functions.GetRandom()
				cl.Parent = parent
				cl.Disabled = false
				if object then
					table.insert(Variables.Objects,cl)
				end
			end
		end;

		Split = function(msg,key,num)
			if not msg or not key or not num or num <= 0 then return {} end
			if key=="" then key = " " end

			local tab = {}
			local str = ''

			for arg in string.gmatch(msg,'([^'..key..']+)') do
				if #tab>=num then
					break
				elseif #tab>=num-1 then
					table.insert(tab,string.sub(msg,#str+1,#msg))
				else
					str ..= arg..key
					table.insert(tab,arg)
				end
			end

			return tab
		end;

		BasicSplit = function(msg,key)
			local ret = {}
			for arg in string.gmatch(msg,"([^"..key.."]+)") do
				table.insert(ret,arg)
			end
			return ret
		end;

		CountTable = function(tab)
			local num = 0
			for i in tab do
				num += 1
			end
			return num
		end;

		IsValidTexture = function(id)
			local id = tonumber(id)
			local ran, info = pcall(function() return service.MarketPlace:GetProductInfo(id) end)

			if ran and info and info.AssetTypeId == 1 then
				return true;
			else
				return false;
			end
		end;

		GetTexture = function(id)
			local id = tonumber(id);
			if id and Functions.IsValidTexture(id) then
				return id;
			else
				return 6825455804;
			end
		end;

		Trim = function(str)
			return string.match(str, "^%s*(.-)%s*$")
		end;

		Round = function(num)
			return math.floor(num + 0.5)
		end;

		RoundToPlace = function(num, places)
			return math.floor((num*(10^(places or 0)))+0.5)/(10^(places or 0))
		end;

		CleanWorkspace = function()
			for _, v in workspace:GetChildren() do
				if v:IsA("BackpackItem") or v:IsA("Accoutrement") then
					v:Destroy()
				end
			end
		end;

		RemoveSeatWelds = function(seat)
			if seat then
				for _,v in seat:GetChildren() do
					if v:IsA("Weld") then
						if v.Part1 and v.Part1.Name == "HumanoidRootPart" then
							v:Destroy()
						end
					end
				end
			end
		end;

		GrabNilPlayers = function(name)
			local AllGrabbedPlayers = {}
			for _,v in service.NetworkServer:GetChildren() do
				pcall(function()
					if v:IsA("NetworkReplicator") then
						if string.sub(string.lower(v:GetPlayer().Name),1,#name)==string.lower(name) or name=='all' then
							table.insert(AllGrabbedPlayers, (v:GetPlayer() or "NoPlayer"))
						end
					end
				end)
			end
			return AllGrabbedPlayers
		end;

		GetUserIdFromNameAsync = function(name)
			local cache = Admin.UserIdCache[name]
			if not cache then
				local success, UserId = pcall(service.Players.GetUserIdFromNameAsync, service.Players, name)

				if success then
					Admin.UserIdCache[name] = UserId
					return UserId
				end
			end

			return cache
		end;

		Shutdown = function(reason)
			Functions.Message(Settings.SystemTitle, "The server is shutting down...", service.Players:GetPlayers(), false, 5)
			task.wait(1)

			service.Players.PlayerAdded:Connect(function(player)
				player:Kick("Server Shutdown\n\n".. tostring(reason or "No Reason Given"))
			end)

			for _, v in service.Players:GetPlayers() do
				v:Kick("Server Shutdown\n\n" .. tostring(reason or "No Reason Given"))
			end
		end;

		Donor = function(plr)
			if Admin.CheckDonor(plr) and Settings.DonorCapes then
				local PlayerData = Core.GetPlayer(plr) or {Donor = {}}
				local donor = PlayerData.Donor or {}
				if donor and donor.Enabled then
					local img,color,material
					if donor and donor.Cape then
						img,color,material = donor.Cape.Image,donor.Cape.Color,donor.Cape.Material
					else
						img,color,material = '0','White','Neon'
					end
					if plr and plr.Character and plr.Character:FindFirstChild("HumanoidRootPart") then
						Functions.Cape(plr,true,material,color,img)
					end
				end
			end
		end;

		CheckMatch = function(check, match)
			if check == match then
				return true
			elseif type(check) == "table" and type(match) == "table" then
				local good = false
				local num = 0

				for k, v in check do
					if v == match[k] then
						good = true
					else
						good = false
						break
					end
					num += 1
				end

				return good and num == Functions.CountTable(match)
			end
			return false
		end;

		LaxCheckMatch = function(check, match)
			if check == match then
				return true
			elseif type(check) == "table" and type(match) == "table" then
				for k, v in match do
					if check[k] ~= v then
						return false
					end
				end
				return true
			end
			return false
		end;

		DSKeyNormalize = function(intab, reverse)
			local tab = {}

			if reverse then
				for i,v in intab do
					if tonumber(i) then
						tab[tonumber(i)] = v;
					end
				end
			else
				for i,v in intab do
					tab[tostring(i)] = v;
				end
			end

			return tab;
		end;

		GetIndex = function(tab,match)
			for i,v in tab do
				if v==match then
					return i
				elseif type(v)=="table" and type(match)=="table" then
					local good = false
					for k,m in v do
						if m == match[k] then
							good = true
						else
							good = false
							break
						end
					end
					if good then
						return i
					end
				end
			end
		end;

		ConvertPlayerCharacterToRig = function(plr: Player, rigType: EnumItem)
			rigType = rigType or Enum.HumanoidRigType.R15

			local Humanoid: Humanoid = plr.Character and plr.Character:FindFirstChildOfClass("Humanoid")

			local HumanoidDescription = Humanoid:GetAppliedDescription() or service.Players:GetHumanoidDescriptionFromUserId(plr.UserId)
			local newCharacterModel: Model = service.Players:CreateHumanoidModelFromDescription(HumanoidDescription, rigType, Enum.AssetTypeVerification.Always)
			local Animate: BaseScript = newCharacterModel.Animate

			newCharacterModel.Humanoid.DisplayName = Humanoid.DisplayName
			newCharacterModel.Name = plr.Name

			local oldCFrame = plr.Character and plr.Character:GetPivot() or CFrame.new()

			if plr.Character then
				plr.Character:Destroy()
				plr.Character = nil
			end
			plr.Character = newCharacterModel

			newCharacterModel:PivotTo(oldCFrame)
			newCharacterModel.Parent = workspace

			-- hacky way to fix other people being unable to see animations.
			for _ = 1, 2 do
				if Animate then
					Animate.Disabled = not Animate.Disabled
				end
			end

			return newCharacterModel
		end;

		CreateClothingFromImageId = function(clothingType, id)
			return service.New(clothingType, {
				Name = clothingType;
				[assert(if clothingType == "Shirt" then "ShirtTemplate"
					elseif clothingType == "Pants" then "PantsTemplate"
					elseif clothingType == "ShirtGraphic" then "Graphic"
					else nil, "Invalid clothing type")
				] = "rbxassetid://"..id;
			})
		end;

		ParseColor3 = function(str: string?)
			if not str then return nil end
			if str:lower() == "random" then
				return Color3.fromRGB(math.random(0, 255), math.random(0, 255), math.random(0, 255))
			end

			local color = {}
			for s in string.gmatch(str, "[%d]+") do
				table.insert(color, tonumber(s))
			end

			if #color == 3 then
				color = Color3.fromRGB(unpack(color))
			else
				local brickColor = BrickColor.new(str)
				if str == tostring(brickColor) then
					color = brickColor.Color
				else
					return
				end
			end

			return color
		end;

		ParseBrickColor = function(str: string, allowNil: boolean?)
			if not str and allowNil then
				return nil
			end
			if not str or str:lower() == "random" then
				return BrickColor.random()
			end

			local brickColor = BrickColor.new(str)
			if str == tostring(brickColor) then
				return brickColor
			else
				-- If provided a Color3, return closest BrickColor
				local color = Functions.ParseColor3(str)
				if color then
					return BrickColor.new(color)
				end
			end
			return if allowNil then nil else BrickColor.random()
		end;
	};
end


Prompt:
--[[
	Defines ProximityPrompt visibility logic specific to the CanPlace cta
--]]

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

local CharacterTag = require(ReplicatedStorage.Source.SharedConstants.CollectionServiceTag.CharacterTag)
local WagonTag = require(ReplicatedStorage.Source.SharedConstants.CollectionServiceTag.WagonTag)

local localPlayer = Players.LocalPlayer :: Player

local function shouldEnable(promptParent: Instance)
	local character = localPlayer.Character
	if not character then
		return false
	end

	-- Can't place something you're not carrying
	local isHoldingPlant = CollectionService:HasTag(character :: Model, CharacterTag.Holding)
	if not isHoldingPlant then
		return false
	end

	-- Can't overfill the wagon
	local wagon = promptParent
	local isWagonFull = CollectionService:HasTag(wagon, WagonTag.WagonFull)
	if isWagonFull then
		return false
	end

	return true
end

return shouldEnable


Prompt: -- Continuously update the time in real-time

Response:
while wait(1) do
	-- Get the current time in CET
	local currentTime = os.time()

	-- Get the current time in the format "HH:MM AM/PM"
	local currentTimeString = os.date("%I:%M %p", currentTime)

	-- Update the TextLabel with the current time
	textLabel.Text = currentTimeString
end


Response:
function onRunning(speed)
if speed>0.01 then
if Figure and Humanoid and Humanoid.WalkSpeed<17 then
playAnimation("walk", 0.1, Humanoid);
elseif Figure and Humanoid and Humanoid.WalkSpeed>17 then
playAnimation("run", 0.1, Humanoid);
end;
if currentAnimInstance and currentAnimInstance.AnimationId == "http://www.roblox.com/asset/?id=180426354" then
setAnimationSpeed(speed / 14.5)
end
pose = "Running"
else
playAnimation("idle", 0.1, Humanoid)
pose = "Standing"
end
end
function onDied()
pose = "Dead"
end
function onJumping()
playAnimation("jump", 0.1, Humanoid)
jumpAnimTime = jumpAnimDuration
pose = "Jumping"
end
function onClimbing(speed)
playAnimation("climb", 0.1, Humanoid)
setAnimationSpeed(speed / 12.0)
pose = "Climbing"
end
function onGettingUp()
pose = "GettingUp"
end
function onFreeFall()
if (jumpAnimTime <= 0) then
playAnimation("fall", fallTransitionTime, Humanoid)
end
pose = "FreeFall"
end
function onFallingDown()
pose = "FallingDown"
end
function onSeated()
pose = "Seated"
end
function onPlatformStanding()
pose = "PlatformStanding"
end
function onSwimming(speed)
if speed>0 then
pose = "Running"
else
pose = "Standing"
end
end

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

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

function animateTool()

if (toolAnim == "None") then
playToolAnimation("toolnone", toolTransitionTime, Humanoid)
return
end

if (toolAnim == "Slash") then
playToolAnimation("toolslash", 0, Humanoid)
return
end

if (toolAnim == "Lunge") then
playToolAnimation("toollunge", 0, Humanoid)
return
end
end

local lastTick = 0

function move(time)
local amplitude = 1
local frequency = 1
  local deltaTime = time - lastTick
  lastTick = time

local climbFudge = 0
local setAngles = false

  if (jumpAnimTime > 0) then
  jumpAnimTime = jumpAnimTime - deltaTime
  end

if (pose == "FreeFall" and jumpAnimTime <= 0) then
playAnimation("fall", fallTransitionTime, Humanoid)
elseif (pose == "Seated") then
playAnimation("sit", 0.5, Humanoid)
return
elseif (pose == "Running") then
if Figure and Humanoid and Humanoid.WalkSpeed<17 then
playAnimation("walk", 0.1, Humanoid);
elseif Figure and Humanoid and Humanoid.WalkSpeed>17 then
playAnimation("run", 0.1, Humanoid);
end;
elseif (pose == "Dead" or pose == "GettingUp" or pose == "FallingDown" or pose == "Seated" or pose == "PlatformStanding") then
stopAllAnimations()
amplitude = 0.1
frequency = 1
setAngles = true
end
if (setAngles) then

end


Prompt:
--[[
	mapStateToProps:
		(storeState, props) -> partialProps
		OR
		() -> (storeState, props) -> partialProps
	mapDispatchToProps: (dispatch) -> partialProps
]]

Response:
local function connect(mapStateToPropsOrThunk, mapDispatchToProps)
	local connectTrace = debug.traceback()

	if mapStateToPropsOrThunk ~= nil then
		assert(typeof(mapStateToPropsOrThunk) == "function", "mapStateToProps must be a function or nil!")
	else
		mapStateToPropsOrThunk = noop
	end

	if mapDispatchToProps ~= nil then
		assert(typeof(mapDispatchToProps) == "function", "mapDispatchToProps must be a function or nil!")
	else
		mapDispatchToProps = noop
	end

	return function(innerComponent)
		if innerComponent == nil then
			local message = formatMessage({
				"connect returns a function that must be passed a component.",
				"Check the connection at:",
				"%s",
			}, {
				connectTrace,
			})

			error(message, 2)
		end

		local componentName = ("RoduxConnection(%s)"):format(tostring(innerComponent))

		local Connection = Roact.Component:extend(componentName)

		function Connection.getDerivedStateFromProps(nextProps, prevState)
			if prevState.stateUpdater ~= nil then
				return prevState.stateUpdater(nextProps, prevState)
			end
		end

		function Connection:init()
			self.store = getStore(self)

			if self.store == nil then
				local message = formatMessage({
					"Cannot initialize Roact-Rodux connection without being a descendent of StoreProvider!",
					"Tried to wrap component %q",
					"Make sure there is a StoreProvider above this component in the tree.",
				}, {
					tostring(innerComponent),
				})

				error(message)
			end

			local storeState = self.store:getState()

			local mapStateToProps = mapStateToPropsOrThunk
			local mappedStoreState = mapStateToProps(storeState, self.props)

			-- mapStateToPropsOrThunk can return a function instead of a state
			-- value. In this variant, we keep that value as mapStateToProps
			-- instead of the original mapStateToProps. This matches react-redux
			-- and enables connectors to keep instance-level state.
			if typeof(mappedStoreState) == "function" then
				mapStateToProps = mappedStoreState
				mappedStoreState = mapStateToProps(storeState, self.props)
			end

			if mappedStoreState ~= nil and typeof(mappedStoreState) ~= "table" then
				local message = formatMessage({
					"mapStateToProps must either return a table, or return another function that returns a table.",
					"Instead, it returned %q, which is of type %s.",
				}, {
					tostring(mappedStoreState),
					typeof(mappedStoreState),
				})

				error(message)
			end

			local mappedStoreDispatch = mapDispatchToProps(function(...)
				return self.store:dispatch(...)
			end)

			local stateUpdater = makeStateUpdater(self.store)

			self.state = {
				-- Combines props, mappedStoreDispatch, and the result of
				-- mapStateToProps into propsForChild. Stored in state so that
				-- getDerivedStateFromProps can access it.
				stateUpdater = stateUpdater,

				-- Used by the store changed connection and stateUpdater to
				-- construct propsForChild.
				mapStateToProps = mapStateToProps,

				-- Used by stateUpdater to construct propsForChild.
				mappedStoreDispatch = mappedStoreDispatch,

				-- Passed directly into the component that Connection is
				-- wrapping.
				propsForChild = nil,
			}

			local extraState = stateUpdater(self.props, self.state, mappedStoreState)

			for key, value in pairs(extraState) do
				self.state[key] = value
			end
		end

		function Connection:didMount()
			self.storeChangedConnection = self.store.changed:connect(function(storeState)
				self:setState(function(prevState, props)
					local mappedStoreState = prevState.mapStateToProps(storeState, props)

					-- We run this check here so that we only check shallow
					-- equality with the result of mapStateToProps, and not the
					-- other props that could be passed through the connector.
					if shallowEqual(mappedStoreState, prevState.mappedStoreState) then
						return nil
					end

					return prevState.stateUpdater(props, prevState, mappedStoreState)
				end)
			end)
		end

		function Connection:willUnmount()
			self.storeChangedConnection:disconnect()
		end

		function Connection:render()
			return Roact.createElement(innerComponent, self.state.propsForChild)
		end

		return Connection
	end
end

return connect


Prompt: -- Remove and return the top priority item

Response:
function PriorityQueue:Pop()
	local heap = self.heap
	local orig = heap[1][1]

	heap[1] = heap[self.current_size]
	heap[self.current_size] = nil

	self.current_size -= 1
	self:sink()

	return orig
end

return PriorityQueue


Prompt: -- ANIMATIONS --

Response:
local equippedIdle
local childAdded
local childRemoved


Prompt:
--[[

	Alternative to Wait() which is using tick to sync time

	Functions.Wait(
		Time(sec)   			<-- |REQ|	Number
	)

--]]

Response:
return function(t)
	local _tick = tick()
	while (tick() - _tick) < t do
		_L.Services.RunService.Heartbeat:Wait()
	end
end


Prompt:
--[[
	A mapping of ZoneIds to UILayers used for setting up zone connections to open corresponding shop UI
--]]

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

local UILayerId = require(ReplicatedStorage.Source.SharedConstants.UILayerId)
local ZoneIdTag = require(ReplicatedStorage.Source.SharedConstants.CollectionServiceTag.ZoneIdTag)

local UILayerIdByZoneId: { [ZoneIdTag.EnumType]: UILayerId.EnumType } = {
	[ZoneIdTag.InShop] = UILayerId.SeedMarket,
	[ZoneIdTag.InGardenStore] = UILayerId.GardenStore,
}

return UILayerIdByZoneId


Prompt: -- New ProfileStore:

Response:
function ProfileService.GetProfileStore(profile_store_index, profile_template) --> [ProfileStore]

	local profile_store_name
	local profile_store_scope = nil

	-- Parsing profile_store_index:
	if type(profile_store_index) == "string" then
		-- profile_store_index as string:
		profile_store_name = profile_store_index
	elseif type(profile_store_index) == "table" then
		-- profile_store_index as table:
		profile_store_name = profile_store_index.Name
		profile_store_scope = profile_store_index.Scope
	else
		error("[ProfileService]: Invalid or missing profile_store_index")
	end

	-- Type checking:
	if profile_store_name == nil or type(profile_store_name) ~= "string" then
		error("[ProfileService]: Missing or invalid \"Name\" parameter")
	elseif string.len(profile_store_name) == 0 then
		error("[ProfileService]: ProfileStore name cannot be an empty string")
	end

	if profile_store_scope ~= nil and (type(profile_store_scope) ~= "string" or string.len(profile_store_scope) == 0) then
		error("[ProfileService]: Invalid \"Scope\" parameter")
	end

	if type(profile_template) ~= "table" then
		error("[ProfileService]: Invalid profile_template")
	end

	local profile_store
	profile_store = {
		Mock = {
			LoadProfileAsync = function(_, profile_key, not_released_handler)
				return profile_store:LoadProfileAsync(profile_key, not_released_handler, UseMockTag)
			end,
			GlobalUpdateProfileAsync = function(_, profile_key, update_handler)
				return profile_store:GlobalUpdateProfileAsync(profile_key, update_handler, UseMockTag)
			end,
			ViewProfileAsync = function(_, profile_key)
				return profile_store:ViewProfileAsync(profile_key, UseMockTag)
			end,
			WipeProfileAsync = function(_, profile_key)
				return profile_store:WipeProfileAsync(profile_key, UseMockTag)
			end
		},

		_profile_store_name = profile_store_name,
		_profile_store_scope = profile_store_scope,
		_profile_store_lookup = profile_store_name .. "\0" .. (profile_store_scope or ""),

		_profile_template = profile_template,
		_global_data_store = nil,
		_loaded_profiles = {},
		_profile_load_jobs = {},
		_mock_loaded_profiles = {},
		_mock_profile_load_jobs = {},
		_is_pending = false,
	}
	setmetatable(profile_store, ProfileStore)

	if IsLiveCheckActive == true then
		profile_store._is_pending = true
		coroutine.wrap(function()
			WaitForLiveAccessCheck()
			if UseMockDataStore == false then
				profile_store._global_data_store = DataStoreService:GetDataStore(profile_store_name, profile_store_scope)
			end
			profile_store._is_pending = false
		end)()
	else
		if UseMockDataStore == false then
			profile_store._global_data_store = DataStoreService:GetDataStore(profile_store_name, profile_store_scope)
		end
	end

	return profile_store
end


Prompt: -- Assign hotkeys for sibling selection

Response:
AssignHotkey({ 'LeftBracket' }, Support.Call(Targeting.SelectSiblings, false, true));
AssignHotkey({ 'LeftShift', 'LeftBracket' }, Support.Call(Targeting.SelectSiblings, false, false));
AssignHotkey({ 'RightShift', 'LeftBracket' }, Support.Call(Targeting.SelectSiblings, false, false));


Prompt: --removedLength = 8

Response:
function onTouched(hit)
	if hit.Parent == nil or hit.Name == "Bullet" then return end
	local humanoid = hit.Parent:findFirstChild("Humanoid")

	local explosion = Instance.new("Explosion")
 	explosion.BlastRadius = 3.5
	explosion.BlastPressure = 25000
  	explosion.Position = script.Parent.Position
 	explosion.Parent = game.Workspace

	if(ball.Name=="Bullet") then
		-- make a splat
		for i=1,3 do
			s = Instance.new("Part")
			s.Name = "Shard"
			s.Shape = 1 -- block
			s.formFactor = 2 -- plate
			s.Size = Vector3.new(.4,.4,.4)
			s.BrickColor = BrickColor.new(blacks[math.random(#blacks)])
			s.Material = Enum.Material.Metal
			local v = Vector3.new(math.random(-1,1), math.random(0,1), math.random(-1,1))
			s.Velocity = 125 * v
			s.CFrame = CFrame.new(ball.Position + v, v)
			local new_script = script.Fragment: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)

			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: --pose data

Response:
poses = {
	equip = {
		[1] = {
			--mw = {CFrame.new(-0.2264328, 0.0250015259, -0.604776859, 0.98480773, 0, 0.173648193, 0, 1, 0, -0.173648193, 0, 0.98480773), easingstyles.Sine, easingdirs.In},
			bw = {CFrame.new(-0.299999237, 0.104995728, 0.0449981689, 1, 3.33557523e-06, 2.00149793e-06, -3.33557591e-06, 1, 3.57635798e-07, -2.0014968e-06, -3.57642477e-07, 1), easingstyles.Sine, easingdirs.In},
			hw = {CFrame.new(-0.0665130615, 0, -0.0558013916, 0.764023483, -0.133021921, 0.631326377, 0.0301536229, 0.984807849, 0.17100969, -0.644483387, -0.111618645, 0.756427288), easingstyles.Sine, easingdirs.In},
			gw = {CFrame.new(-0.459022522, 0.0749015808, 0.17483139, 2.98023224e-08, 0.999999404, 5.58793545e-08, 0.939692438, -2.68220901e-07, -0.342020184, -0.342019945, 0, -0.939691842), easingstyles.Sine, easingdirs.InOut},
			tw = {CFrame.new(0, 0, 0, 0.642787516, 0, -0.766044497, 0, 1, 0, 0.766044497, 0, 0.642787516), easingstyles.Sine, easingdirs.In},
			raw = {CFrame.new(0.832485199, -0.995883942, -0.72026825, 0.986079514, -0.00105690956, 0.166270182, 0.166003779, -0.0506849214, -0.984821558, 0.00946819782, 0.998714149, -0.0498039126), easingstyles.Sine, easingdirs.InOut},
			law = {CFrame.new(0.0268783569, -1.61439657, -2.11585999, -0.222152725, -0.453005493, 0.863385201, 0.810823023, -0.57762152, -0.0944410712, 0.541492224, 0.67907244, 0.495627582), easingstyles.Sine, easingdirs.InOut},
		},
		[2] = {
			--mw = {CFrame.new(-0.2264328, 0.0250015259, -0.604776859, 0.98480773, 0, 0.173648193, 0, 1, 0, -0.173648193, 0, 0.98480773), easingstyles.Sine, easingdirs.In},
			bw = {CFrame.new(0.0999984741, 0.104999542, 0.0449981689, 0.99999404, -1.41561031e-06, -1.00024045e-06, -1.41561031e-06, 0.999997914, -2.98023224e-08, -1.00024045e-06, -2.98023224e-08, 0.999999702), easingstyles.Linear, easingdirs.InOut},
			hw = {CFrame.new(-0.0665130615, 0, -0.0558013916, 0.764023662, -0.133021936, 0.631326437, 0.0301536229, 0.984807849, 0.17100969, -0.644483507, -0.111618653, 0.756427407), easingstyles.Linear, easingdirs.InOut},
			gw = {CFrame.new(-0.459018707, -0.325099945, 0.174833298, 2.98023224e-08, 0.999998987, 1.04308128e-07, 0.939692378, -3.87430191e-07, -0.342020214, -0.342019826, 1.49011612e-08, -0.939691484), easingstyles.Linear, easingdirs.InOut},
			raw = {CFrame.new(0.810245514, -1.00666809, -0.31388092, 0.978280365, 2.5331974e-06, 0.2072853, 0.206869617, -0.0633132458, -0.976317585, 0.0131213665, 0.997993708, -0.0619386435), easingstyles.Sine, easingdirs.InOut},
			law = {CFrame.new(0.0326385498, -1.61523056, -2.11762619, -0.256376684, -0.429218709, 0.866049647, 0.79393369, -0.604562879, -0.0645961761, 0.55130744, 0.671025276, 0.495767117), easingstyles.Sine, easingdirs.InOut},
		},
		[3] = {
			--mw = {CFrame.new(-0.2264328, 0.0250015259, -0.604776859, 0.98480773, 0, 0.173648193, 0, 1, 0, -0.173648193, 0, 0.98480773), easingstyles.Sine, easingdirs.In},
			bw = {CFrame.new(-0.299999237, 0.104995728, 0.0449981689, 1, 3.33557523e-06, 2.00149793e-06, -3.33557591e-06, 1, 3.57635798e-07, -2.0014968e-06, -3.57642477e-07, 1), easingstyles.Back, easingdirs.Out},
			hw = {CFrame.new(0, 0, 0, 0.642787635, 0, 0.766044438, 0, 1, 0, -0.766044438, 0, 0.642787635), easingstyles.Sine, easingdirs.Out},
			gw = {CFrame.new(-0.209030151, -1.02510452, -0.225169182, 9.54675698e-08, 0.99999994, 8.86497986e-10, 0.939692557, -1.49011612e-07, -0.342020124, -0.342020124, 3.348487e-08, -0.939692557), easingstyles.Sine, easingdirs.Out},
			raw = {CFrame.new(0.659713745, -1.45935869, 0.354370117, 0.99999994, -2.98023224e-08, 3.35276127e-08, 3.53902578e-08, -3.21306288e-08, -0.999999881, -2.98023224e-08, 1, -3.0035153e-08), easingstyles.Sine, easingdirs.Out},
			law = {CFrame.new(-0.000568389893, -1.6040411, -2.10723114, -0.0793336332, -0.53615725, 0.840381742, 0.862421989, -0.459712416, -0.211878672, 0.499934286, 0.707954705, 0.498864472), easingstyles.Sine, easingdirs.Out},
		}
	},
	shoot = {
		[1] = {
			--mw = {CFrame.new(-0.2264328, 0.0250015259, -0.604776859, 0.98480773, 0, 0.173648193, 0, 1, 0, -0.173648193, 0, 0.98480773), easingstyles.Sine, easingdirs.In},
			bw = {CFrame.new(0.0999984741, 0.104999542, 0.0449981689, 0.99999404, -1.41561031e-06, -1.00024045e-06, -1.41561031e-06, 0.999997914, -2.98023224e-08, -1.00024045e-06, -2.98023224e-08, 0.999999702), easingstyles.Back, easingdirs.Out},
			hw = {CFrame.new(0, 0, 0, 0.642787635, 0, 0.766044438, 0, 1, 0, -0.766044438, 0, 0.642787635), easingstyles.Back, easingdirs.Out},
			gw = {CFrame.new(-0.209030151, -1.02510452, -0.225169182, 9.54675698e-08, 0.99999994, 8.86497986e-10, 0.939692557, -1.49011612e-07, -0.342020124, -0.342020124, 3.348487e-08, -0.939692557), easingstyles.Back, easingdirs.Out},
			raw = {CFrame.new(0.659713745, -1.45935869, 0.354370117, 0.99999994, -2.98023224e-08, 3.35276127e-08, 3.53902578e-08, -3.21306288e-08, -0.999999881, -2.98023224e-08, 1, -3.0035153e-08), easingstyles.Back, easingdirs.Out},
			law = {CFrame.new(-0.000568389893, -1.6040411, -2.10723114, -0.0793336332, -0.53615725, 0.840381742, 0.862421989, -0.459712416, -0.211878672, 0.499934286, 0.707954705, 0.498864472), easingstyles.Back, easingdirs.Out},
		},
		[2] = {
			--mw = {CFrame.new(-0.2264328, 0.0250015259, -0.604776859, 0.98480773, 0, 0.173648193, 0, 1, 0, -0.173648193, 0, 0.98480773), easingstyles.Sine, easingdirs.In},
			bw = {CFrame.new(-0.299999237, 0.104995728, 0.0449981689, 1, 3.33557523e-06, 2.00149793e-06, -3.33557591e-06, 1, 3.57635798e-07, -2.0014968e-06, -3.57642477e-07, 1), easingstyles.Back, easingdirs.Out},
			hw = {CFrame.new(0, 0, 0, 0.642787635, 0, 0.766044438, 0, 1, 0, -0.766044438, 0, 0.642787635), easingstyles.Back, easingdirs.Out},
			gw = {CFrame.new(-0.209030151, -1.02510452, -0.225169182, 9.54675698e-08, 0.99999994, 8.86497986e-10, 0.939692557, -1.49011612e-07, -0.342020124, -0.342020124, 3.348487e-08, -0.939692557), easingstyles.Back, easingdirs.Out},
			raw = {CFrame.new(0.659713745, -1.45935869, 0.354370117, 0.99999994, -2.98023224e-08, 3.35276127e-08, 3.53902578e-08, -3.21306288e-08, -0.999999881, -2.98023224e-08, 1, -3.0035153e-08), easingstyles.Back, easingdirs.Out},
			law = {CFrame.new(-0.000568389893, -1.6040411, -2.10723114, -0.0793336332, -0.53615725, 0.840381742, 0.862421989, -0.459712416, -0.211878672, 0.499934286, 0.707954705, 0.498864472), easingstyles.Back, easingdirs.Out},
		}
	},
	reload = {
		[1] = {
			--mw = {CFrame.new(-0.2264328, 0.0250015259, -0.604776859, 0.98480773, 0, 0.173648193, 0, 1, 0, -0.173648193, 0, 0.98480773), easingstyles.Sine, easingdirs.In},
			bw = {CFrame.new(-0.299999237, 0.104995728, 0.0449981689, 1, 3.33557523e-06, 2.00149793e-06, -3.33557591e-06, 1, 3.57635798e-07, -2.0014968e-06, -3.57642477e-07, 1), easingstyles.Sine, easingdirs.InOut},
			hw = {CFrame.new(-0.055809021, 0, -0.0665130615, 0.766044319, -0.11161875, 0.633022487, -3.7252903e-08, 0.984807789, 0.17364797, -0.642787755, -0.133022055, 0.754406393), easingstyles.Sine, easingdirs.InOut},
			gw = {CFrame.new(-0.0572328568, -0.980491638, -0.278923035, 0.0310192183, 0.998318493, 0.0487680063, 0.937351048, -0.0121154999, -0.34816578, -0.346991748, 0.0565129519, -0.936161935), easingstyles.Sine, easingdirs.InOut},
			raw = {CFrame.new(1.26604462, -0.913009644, -0.537094116, 0.999999821, -3.57627869e-07, 6.27093755e-08, 4.48221016e-10, -0.173648104, -0.984807611, 3.85997794e-07, 0.984807551, -0.173648149) * CFrame.new(0,0,0.5), easingstyles.Sine, easingdirs.InOut},
			law = {CFrame.new(-1.08869362, -1.33496189, -1.19934082, 0.766044259, 4.22527791e-10, -0.642787695, -0.111618742, 0.98480767, -0.133021995, 0.633022428, 0.17364791, 0.754406333) * CFrame.new(0,0,0.5) * CFrame.new(0,-0.8,0), easingstyles.Sine, easingdirs.InOut},
		},
		[2] = {
			--mw = {CFrame.new(-0.2264328, 0.0250015259, -0.604776859, 0.98480773, 0, 0.173648193, 0, 1, 0, -0.173648193, 0, 0.98480773), easingstyles.Sine, easingdirs.In},
			bw = {CFrame.new(-0.299999237, 0.104995728, 0.0449981689, 1, 3.33557523e-06, 2.00149793e-06, -3.33557591e-06, 1, 3.57635798e-07, -2.0014968e-06, -3.57642477e-07, 1), easingstyles.Sine, easingdirs.In},
			hw = {CFrame.new(-0.055809021, 0, -0.0665130615, 0.864329457, -0.11161875, 0.490383387, 0.03015358, 0.984807789, 0.171009868, -0.502021194, -0.133022055, 0.854564071), easingstyles.Sine, easingdirs.In},
			gw = {CFrame.new(-0.0572328568, -0.980491638, -0.278923035, 0.0310192183, 0.998318493, 0.0487680063, 0.937351048, -0.0121154999, -0.34816578, -0.346991748, 0.0565129519, -0.936161935), easingstyles.Sine, easingdirs.In},
			raw = {CFrame.new(1.11267471, -0.963647842, -0.780944824, 0.96286577, 0.230811596, -0.140053496, -0.10095071, -0.173324212, -0.979677141, -0.250395477, 0.957436204, -0.143587425) * CFrame.new(0.2,0,0) * CFrame.new(0,0,0.5) * CFrame.Angles(0,-0.05,0), easingstyles.Sine, easingdirs.In},
			law = {CFrame.new(-0.289166451, -0.800122261, -1.59056854, 0.533511698, -0.820919991, -0.203605846, -0.0797704309, 0.190816656, -0.978378952, 0.842022419, 0.53821826, 0.0363177806) * CFrame.new(0,0,0.5) * CFrame.new(0,0,0), easingstyles.Sine, easingdirs.In},
		},
		[3] = {
			--mw = {CFrame.new(-0.2264328, 0.0250015259, -0.604776859, 0.98480773, 0, 0.173648193, 0, 1, 0, -0.173648193, 0, 0.98480773), easingstyles.Sine, easingdirs.In},
			bw = {CFrame.new(-0.299999237, 0.104995728, 0.0449981689, 1, 3.33557523e-06, 2.00149793e-06, -3.33557591e-06, 1, 3.57635798e-07, -2.0014968e-06, -3.57642477e-07, 1), easingstyles.Sine, easingdirs.Out},
			hw = {CFrame.new(-0.055809021, 0, -0.0665130615, 0.936352491, -0.11161875, 0.332844049, 0.0593910292, 0.984807789, 0.163175717, -0.34600088, -0.133022055, 0.928756297), easingstyles.Sine, easingdirs.Out},
			gw = {CFrame.new(-0.0572328568, -0.980491638, -0.278923035, 0.0310192183, 0.998318493, 0.0487680063, 0.937351048, -0.0121154999, -0.34816578, -0.346991748, 0.0565129519, -0.936161935), easingstyles.Sine, easingdirs.Out},
			raw = {CFrame.new(0.951341629, -1.00614738, -0.96661377, 0.887119889, 0.393562078, -0.241094485, -0.185951054, -0.173324212, -0.967150807, -0.422421396, 0.902810454, -0.0805761442) * CFrame.new(0.3,0,0) * CFrame.new(0,0,0.5) * CFrame.Angles(0,-0.1,0), easingstyles.Sine, easingdirs.Out},
			law = {CFrame.new(-0.798740387, -0.729963303, -1.94239807, 0.788041711, -0.601489127, -0.131151706, -0.0967602059, 0.0893746093, -0.991286814, 0.60796994, 0.793865442, 0.0122306943) * CFrame.new(0,0,0.5) * CFrame.new(0.5,0,-0.4), easingstyles.Sine, easingdirs.Out},
		},
		[4] = {
			--mw = {CFrame.new(-0.2264328, 0.0250015259, -0.604776859, 0.98480773, 0, 0.173648193, 0, 1, 0, -0.173648193, 0, 0.98480773), easingstyles.Sine, easingdirs.In},
			bw = {CFrame.new(-0.299999237, 0.104995728, 0.0449981689, 1, 3.33557523e-06, 2.00149793e-06, -3.33557591e-06, 1, 3.57635798e-07, -2.0014968e-06, -3.57642477e-07, 1), easingstyles.Sine, easingdirs.In},
			hw = {CFrame.new(-0.055809021, 0, -0.0665130615, 0.936352491, -0.11161875, 0.332844049, 0.0593910292, 0.984807789, 0.163175717, -0.34600088, -0.133022055, 0.928756297), easingstyles.Sine, easingdirs.In},
			gw = {CFrame.new(-0.0572328568, -0.980491638, -0.278923035, 0.0310192183, 0.998318493, 0.0487680063, 0.937351048, -0.0121154999, -0.34816578, -0.346991748, 0.0565129519, -0.936161935), easingstyles.Sine, easingdirs.In},
			raw = {CFrame.new(0.951341629, -1.00614738, -0.96661377, 0.887119889, 0.393562078, -0.241094485, -0.185951054, -0.173324212, -0.967150807, -0.422421396, 0.902810454, -0.0805761442) * CFrame.Angles(0,-0.45,0) * CFrame.new(0,0,0.5) * CFrame.Angles(0,-0.15,0), easingstyles.Sine, easingdirs.In},
			law = {CFrame.new(-0.733897209, -0.698638916, -1.94715118, 0.733374, -0.676505506, -0.0670995787, -0.0810378194, 0.0110032074, -0.996650279, 0.67497766, 0.736355007, -0.0467530787) * CFrame.new(0,0,0.5) * CFrame.Angles(0.15,0,0) * CFrame.new(-0.1,0,0), easingstyles.Sine, easingdirs.In},
		},
		[5] = {
			--mw = {CFrame.new(-0.2264328, 0.0250015259, -0.604776859, 0.98480773, 0, 0.173648193, 0, 1, 0, -0.173648193, 0, 0.98480773), easingstyles.Sine, easingdirs.In},
			bw = {CFrame.new(-0.299999237, 0.104995728, 0.0449981689, 1, 3.33557523e-06, 2.00149793e-06, -3.33557591e-06, 1, 3.57635798e-07, -2.0014968e-06, -3.57642477e-07, 1), easingstyles.Sine, easingdirs.Out},
			hw = {CFrame.new(-0.055809021, 0, -0.0665130615, 0.936352491, -0.11161875, 0.332844049, 0.0593910292, 0.984807789, 0.163175717, -0.34600088, -0.133022055, 0.928756297), easingstyles.Sine, easingdirs.Out},
			gw = {CFrame.new(-0.0572328568, -0.980491638, -0.278923035, 0.0310192183, 0.998318493, 0.0487680063, 0.937351048, -0.0121154999, -0.34816578, -0.346991748, 0.0565129519, -0.936161935), easingstyles.Sine, easingdirs.Out},
			raw = {CFrame.new(0.956790924, -0.985137939, -0.964424133, 0.887119889, 0.382671088, -0.258031964, -0.185951054, -0.215345785, -0.95867002, -0.422421396, 0.898436666, -0.119879492) * CFrame.Angles(0,-0.55,0) * CFrame.new(0,0,0.4) * CFrame.Angles(0,-0.1,0), easingstyles.Sine, easingdirs.Out},
			law = {CFrame.new(-0.702912331, -0.529985428, -1.91860962, 0.691018224, -0.696123064, -0.194694132, -0.3362284, -0.0711144507, -0.939091682, 0.639877796, 0.714391232, -0.28319779) * CFrame.new(0,0,0.5) * CFrame.new(0.1,0,0), easingstyles.Sine, easingdirs.Out},
		}
	},
	aim = {
		[1] = {
			bw = {CFrame.new(-0.299999237, 0.104995728, 0.0449981689, 1, 3.33557523e-06, 2.00149793e-06, -3.33557591e-06, 1, 3.57635798e-07, -2.0014968e-06, -3.57642477e-07, 1), easingstyles.Back, easingdirs.Out},
			hw = {CFrame.new(0, 0, 0, 0.642787635, 0, 0.766044438, 0, 1, 0, -0.766044438, 0, 0.642787635), easingstyles.Sine, easingdirs.Out},
			gw = {CFrame.new(-0.209030151, -1.02510452, -0.225169182, 9.54675698e-08, 0.99999994, 8.86497986e-10, 0.939692557, -1.49011612e-07, -0.342020124, -0.342020124, 3.348487e-08, -0.939692557), easingstyles.Sine, easingdirs.Out},
			raw = {CFrame.new(0.659713745, -1.45935869, 0.354370117, 0.99999994, -2.98023224e-08, 3.35276127e-08, 3.53902578e-08, -3.21306288e-08, -0.999999881, -2.98023224e-08, 1, -3.0035153e-08), easingstyles.Sine, easingdirs.Out},
			law = {CFrame.new(-0.000568389893, -1.6040411, -2.10723114, -0.0793336332, -0.53615725, 0.840381742, 0.862421989, -0.459712416, -0.211878672, 0.499934286, 0.707954705, 0.498864472), easingstyles.Sine, easingdirs.Out},
		}
	},
	--individual poses
	reloadmag = {
		[1] = {
			mag = {CFrame.new(0.383216858, 0.00605773926, -0.895876884, 0.982579589, -0.0196594987, -0.184799746, 0.0194191728, 0.999806643, -0.00311047747, 0.184825167, -0.000532366452, 0.982771337), easingstyles.Sine, easingdirs.In}
		},
		[2] = {
			mag = {CFrame.new(-0.341659546, -0.00597381592, -0.82459569, 0.943051159, -0.0805884004, 0.32273832, 0.108094886, 0.99179846, -0.0682025552, -0.314594954, 0.0992048606, 0.944027781) * CFrame.new(-0.2,0.1,0), easingstyles.Sine, easingdirs.Out}
		},
		[3] = {
			mag = {CFrame.new(-0.343078613, 0.033826828, -0.555139065, 0.931312561, -0.056615673, 0.359807789, 0.0651112646, 0.997804642, -0.0115158707, -0.358372539, 0.0341522247, 0.932950974) * CFrame.Angles(0,0.3,0) * CFrame.new(-0.3,0.2,0), easingstyles.Sine, easingdirs.In}
		},
		[4] = {
			mag = {CFrame.new(-0.226425171, 0.0250015259, -0.604773998, 0.984800279, 1.56462193e-06, 0.173645124, 1.68196857e-06, 0.999979436, -5.66244125e-07, -0.173649177, -8.04662704e-07, 0.984803438), easingstyles.Sine, easingdirs.Out}
		}
	}
}

function clonemag(parent, name)
	local clonedmag = magcmodel:Clone()
	local clonedmagpart = clonedmag:WaitForChild("magpart")
	clonedmag.Name = name
	clonedmag.Parent = parent
	return clonedmag, clonedmagpart
end

function tween(speed, easingstyle, easingdirection, loopcount, reverseafterfinish, delaytime, WHAT, goal)
	local info = TweenInfo.new(speed, easingstyle, easingdirection, loopcount, reverseafterfinish, delaytime)
	local goals = goal
	local anim = tweenservice:Create(WHAT, info, goals)
	anim:Play()
end

function linearlerp(a,b,t)
	return a+(b-a)*t
end

function clientdropshell()
	local shell = Instance.new("SpawnLocation", gunmodel) --spawnlocation because its one of the only baseparts that dont go under tusks basepart limit
	shell.Enabled = false
	shell.Name = "shell;"
	shell.Shape = "Cylinder"
	shell.Size = Vector3.new(0.25,0.1,0.1)
	shell.BrickColor = BrickColor.new("New Yeller")
	shell.Material = "Glass"
	shell.Anchored = true
	shell.CanCollide = false
	shell.CFrame = boltcweld.Part1.CFrame * CFrame.new(0.1,0,0)
	shell:BreakJoints()
	local shellfunc
	local shelltimepassed = 0
	local playedshells = false
	local currentshelly = math.random(1,10)/5
	local currentshellx = math.random(8,15)
	local ejectlookv = boltcweld.Part1.CFrame.upVector
	local ejectrightv = boltcweld.Part1.CFrame.rightVector
	shellfunc = runservice.Stepped:Connect(function(_, delta)
		shelltimepassed = shelltimepassed + delta
		shell.CFrame = CFrame.new(shell.Position, shell.Position+ejectlookv)
			* CFrame.new(0,currentshelly*delta,-currentshellx*delta)
		shell.CFrame = CFrame.new(shell.Position, shell.Position+ejectrightv)
			* CFrame.Angles(0,math.pi/2,0)
		currentshelly = currentshelly - delta*shellfallspeed
		if shelltimepassed > shellflytime then
			shell:Destroy()
			shellfunc:Disconnect()
		end
	end)
end

function pemit(part, color, minsize, maxsize, minlift, maxlift, speed, direction, lifetime)
	pcall(function() --tusk has a particle emitter limit thats why im pcalling
		local em = Instance.new("ParticleEmitter", part)
		em.Color = ColorSequence.new(color)
		em.Texture = "rbxassetid://375847957"
		em.Name = "gemit"
		em.Drag = 10
		em.EmissionDirection = direction
		em.Speed = NumberRange.new(speed)
		em.Rate = 500
		em.Lifetime = NumberRange.new(minlift,maxlift)
		em.SpreadAngle = Vector2.new(-20,20)
		em.Transparency = NumberSequence.new(0.75, 1)
		em.Size = NumberSequence.new(minsize, maxsize)
		task.spawn(function()
			task.wait(lifetime)
			em.Enabled = false
			debris:AddItem(em, 0.5)
		end)
	end)
end

function muzzleflash(size, transparency)
	local e = Instance.new("SpawnLocation", gunmodel) --spawnlocation because its one of the only baseparts that dont go under tusks basepart limit
	e.Enabled = false
	Instance.new("SpecialMesh", e).MeshType = Enum.MeshType.Sphere
	local lig = Instance.new("PointLight", e)
	lig.Brightness = 1-transparency
	e.Size = size
	e.Transparency = transparency
	e.CanCollide = false
	e.Anchored = true
	e.Material = Enum.Material.Neon
	e.CFrame = gunclufa.CFrame * CFrame.new((-size.x/2)-0.3,0,0)
	pemit(gunclufa, Color3.fromRGB(255,255,255), 0.15, 0.35, 0.1, 0.2, 10, "Left", 0.1)
	debris:AddItem(e, 0.025)
end

function cpose(posname, posnumb, speed, backupt)
	if equiptick == backupt then
		if currentlyfps then
			if posname == "shoot" and posnumb == 1 then
				clientdropshell()
				muzzleflash(Vector3.new(2,0.6,0.6), math.random(1,15)/10)
				if adsing then
					offset = offset * CFrame.new(0,0,0.05) * CFrame.Angles(0,0,0.015)
				else
					offset = offset * CFrame.new(0,0,0.1) * CFrame.Angles(0,0,0.03)
				end
			elseif posname == "equip" and posnumb == 2 then
				recoiltick = tick()
				recoilup(0, -0.35, 1, 0.3, recoiltick)
				if bchambered.Value > 0 then
					clientdropshell()
				end
			elseif posname == "reload" then
				if posnumb == 1 then
					recoilup(-0.7, 0.3, -1, 0.4, recoiltick)
				end
			end
		end
		tween(speed, poses[posname][posnumb].raw[2], poses[posname][posnumb].raw[3], 0, false, 0, rarmcweld, {C0 = poses[posname][posnumb].raw[1]})
		tween(speed, poses[posname][posnumb].law[2], poses[posname][posnumb].law[3], 0, false, 0, larmcweld, {C0 = poses[posname][posnumb].law[1]})
		tween(speed, poses[posname][posnumb].gw[2], poses[posname][posnumb].gw[3], 0, false, 0, guncweld, {C0 = poses[posname][posnumb].gw[1]})
		tween(speed, poses[posname][posnumb].bw[2], poses[posname][posnumb].bw[3], 0, false, 0, boltcweld, {C0 = poses[posname][posnumb].bw[1]})
	end
end

function ciposeconvert(posname, posnumb, posdir, speed, backupt)
	if equiptick == backupt then
		if posname == "reloadmag" then
			if posnumb == 1 then
				reloadmagcmodel, reloadmagcpart = clonemag(guncmodel, "mag")
				reloadmagcweld = Instance.new("Weld", reloadmagcmodel)
				reloadmagcweld.Name = "handmagweld"
				reloadmagcweld.Part0 = maincpart
				reloadmagcweld.Part1 = reloadmagcpart
				reloadmagcweld.C0 = CFrame.new(0.771263123, -2.07442856, -2.45114708, 0.108410954, 0.822345078, -0.558561325, -0.0455624163, 0.565389991, 0.823553741, 0.993062019, -0.0638353601, 0.0987635553)
				if not currentlyfps then
					modeltransparency(reloadmagcmodel, 1)
				end
			elseif posnumb == 3 then
				local flingmagm, flingmagp = clonemag(guncmodel, "throw")
				local magv = Instance.new("BodyVelocity", flingmagp)
				magv.MaxForce = Vector3.new(1/0,1/0,1/0)
				magv.Velocity = (mainpart.CFrame.lookVector*-math.random(5,10)) + (mainpart.CFrame.rightVector*-math.random(10,20)) + (mainpart.CFrame.upVector*-math.random(10,20))
				local magav = Instance.new("BodyAngularVelocity", flingmagp)
				magav.MaxTorque = Vector3.new(1/0,1/0,1/0)
				magav.AngularVelocity = hrp.CFrame.rightVector*math.random(15,20)
				debris:AddItem(magv, 0.1)
				debris:AddItem(flingmagp, 0.5)
				if not currentlyfps then
					modeltransparency(flingmagm, 1)
				end
				modeltransparency(magcmodel, 1)
			elseif posnumb == 4 then
				task.spawn(function()
					task.wait(0.2)
					reloadmagcmodel:Destroy()
					if currentlyfps then
						modeltransparency(magcmodel, 0)
					end
				end)
			end
		end
		tween(speed, poses[posname][posnumb][posdir][2], poses[posname][posnumb][posdir][3], 0, false, 0, reloadmagcweld, {C0 = poses[posname][posnumb][posdir][1]})
	end
end

function movec(cf)
	cam.CFrame = cam.CFrame * cf
end

function recoilup(xm, ym, zm, t, tic)
	local firsttick = tick()
	task.spawn(function()
		while runservice.RenderStepped:wait() and tick() < firsttick + t and recoiltick == tic do
			movec(recoilcf:Inverse())
			recoilcf = recoilcf * CFrame.Angles(
				(xm*delta*(recmult/recdampmult))*((t+firsttick)-tick()), --x
				(ym*delta*(recmult/recdampmult))*((t+firsttick)-tick()), --y
				(zm*delta*(recmult/recdampmult))*((t+firsttick)-tick())  --z
			)
			movec(recoilcf)
		end
	end)
end

remote.OnClientEvent:Connect(function(WHAT, param, param2, param3, param4)
	if state ~= "unequipped" then
		if WHAT == "recoil" then
			recoiltick = tick()
			recoilup(recxamount, (math.random(-10,10)/10)*recyamount, (math.random(-10,10)/10)*reczamount, rectime, recoiltick)
		elseif WHAT == "fromserverpose" then
			cpose(param, param2, param3, equiptick)
		elseif WHAT == "fromserverindividualpose" then
			ciposeconvert(param, param2, param3, param4, equiptick)
		end
	end
end)

function ads(enable)
	if enable and not adsing and hrp.Velocity.Magnitude < 17 and (head.CFrame.p - cam.CFrame.p).Magnitude < 1.7 then
		adsing = true
		recmult = recmult/2
		remote:FireServer("5", true)
	elseif not enable and adsing then
		adsing = false
		recmult = recmult*2
		remote:FireServer("5", false)
	end
end

function makefpsviewmodel()
	viewmodel = Instance.new("Model", cam)
	viewmodel.Name = "gunviewmodel"
	Instance.new("Humanoid", viewmodel)
	local mainpart = Instance.new("Part", viewmodel)
	mainpart.Anchored = true
	mainpart.CanCollide = false
	mainpart.Transparency = 1
	mainpart.Size = Vector3.new()
	--
	local rarm = Instance.new("Part", viewmodel)
	rarm.Size = Vector3.new(0.7,2,0.7)
	rarm.Color = character["Right Arm"].Color
	rarm.CanCollide = false
	rarm.Name = "Right Arm"
	local larm = Instance.new("Part", viewmodel)
	larm.Size = Vector3.new(0.7,2,0.7)
	larm.Color = character["Left Arm"].Color
	larm.CanCollide = false
	larm.Name = "Left Arm"
	local gunclone = gunmodel:Clone()
	local gunchandle = gunclone:WaitForChild("Handle")
	local guncmainpart = gunclone:WaitForChild("mainpart")
	gunclufa = gunclone:WaitForChild("lufa")
	maincpart = guncmainpart
	guncmodel = gunclone
	boltcweld = guncmainpart:WaitForChild("boltweld")
	magcmodel = gunclone:WaitForChild("mag")
	gunclone.Parent = viewmodel
	for i,v in pairs(gunclone:GetDescendants()) do
		if v:IsA("BasePart") then
			v.CanCollide = false
			v.Anchored = false
		end
	end
	--
	larmcweld = Instance.new("Weld", mainpart)
	larmcweld.Part0 = mainpart
	larmcweld.Part1 = larm
	larmcweld.C0 = CFrame.new(1,-2.5,0)
	rarmcweld = Instance.new("Weld", mainpart)
	rarmcweld.Part0 = mainpart
	rarmcweld.Part1 = rarm
	rarmcweld.C0 = CFrame.new(1,-2.5,0)
	guncweld = Instance.new("Weld", mainpart)
	guncweld.Part0 = rarm
	guncweld.Part1 = gunchandle
	guncweld.C0 = CFrame.new(1,-2.5,0)
	pcall(function()
		character["Shirt"]:Clone().Parent = viewmodel
	end)
	gunmodel.DescendantAdded:Connect(function(WHAT)
		if (cam.CFrame.p - head.Position).magnitude < 1.3 then
			if WHAT.Name == "throwserver" or WHAT.Name == "reloadserver" then
				WHAT:WaitForChild("Part")
				modeltransparency(WHAT, 1)
			elseif WHAT:IsA("ParticleEmitter") and WHAT.Name == "gemit" then
				WHAT.Transparency = NumberSequence.new(1)
			elseif WHAT:IsA("BasePart") and WHAT.Name == "muzzleflash" or WHAT.Name == "shell;" then
				WHAT.Transparency = 1
			elseif WHAT:IsA("PointLight") and WHAT.Name == "mflash" then
				WHAT.Brightness = 0
			end
		end
	end)
	modeltransparency(viewmodel, 1)
	return mainpart
end

tool.Equipped:Connect(function()
	state = "equipped"
	equiptick = tick()
	local backuptick = equiptick
	local ticktofireserver = 0
	local lastcameracf = cam.CFrame
	savedfov = cam.FieldOfView
	offset = CFrame.new()
	character = owner.Character
	gui.Parent = ownergui
	local mpart = makefpsviewmodel()
	mouse.TargetFilter = mpart.Parent
	chamberedgui.Text = tostring(bchambered.Value)
	ammogui.Text = tostring(binmag.Value)
	maggui.Text = tostring(magleft.Value)
	humanoid = character:FindFirstChildOfClass("Humanoid")
	head = character.Head
	hrp = character.HumanoidRootPart
	humanoid.AutoRotate = false
	rstepgun = runservice.RenderStepped:Connect(function()
		if state ~= "unequipped" and humanoid.Health > 0 and equiptick == backuptick then
			delta = tick() - frametick
			movec(recoilcf:Inverse())
			hrp.CFrame = hrp.CFrame:lerp(CFrame.new(hrp.Position, Vector3.new(mouse.Hit.p.x,hrp.Position.y,mouse.Hit.p.z)),delta*15)
			recoilcf = recoilcf:lerp(CFrame.new(),delta*currentcspeed)
			movec(recoilcf)
			humanoid.CameraOffset = Vector3.new()
			if (cam.CFrame.p - head.Position).magnitude < 1.3 and not currentlyfps then
				humanoid.CameraOffset = Vector3.new(0,0.4,0)
				guntransparency(1)
				modeltransparency(viewmodel, 0)
				currentlyfps = true
			elseif (cam.CFrame.p - head.Position).magnitude > 1.3 and currentlyfps then
				guntransparency(0)
				modeltransparency(viewmodel, 1)
				if adsing then
					ads(false)
				end
				currentlyfps = false
			end
			local relative = cam.CFrame:ToObjectSpace(lastcameracf)
			local camx,camy,camz = relative:ToOrientation()
			local relativevel = hrp.CFrame:vectorToObjectSpace(hrp.Velocity)
			local clampvelx, clampvelz, clampvely = math.clamp(relativevel.x, -35, 35), math.clamp(relativevel.z, -35, 35), math.clamp(relativevel.y, -50, 50)
			local crelativevel = Vector3.new(clampvelx, 0, clampvelz)
			if adsing then
				offset = offset:lerp(CFrame.Angles(camx/2, camy/2, -camy/2) * CFrame.new(-0.45,0.4,0.25), delta*5)
				cam.FieldOfView = linearlerp(cam.FieldOfView, 35, delta*4)
			else
				offset = offset:lerp(CFrame.Angles(camx/2, camy/2, -camy/2), delta*10)
				cam.FieldOfView = linearlerp(cam.FieldOfView, 70+(Vector3.new(hrp.Velocity.x,0,hrp.Velocity.z).Magnitude/5), delta*5)
			end
			if crelativevel.Magnitude > 0.1 then
				if crelativevel.Magnitude < 19 or state == "shooting" then
					offset = offset:lerp(CFrame.Angles(
						(camx/2),
						camy/2-math.cos(tick()*7)*(crelativevel.Magnitude/350),
						(-camy/2)+math.sin(tick()*7)*(crelativevel.Magnitude/120)-(clampvelx/60))
							* CFrame.new(
								math.sin(tick()*7)*(crelativevel.Magnitude/250),
								-math.cos(tick()*14)*(crelativevel.Magnitude/250),
								0), delta*5)
				elseif state ~= "shooting" and humanoid.FloorMaterial ~= Enum.Material.Air then
					if adsing then
						ads(false)
					end
					offset = offset:lerp(CFrame.Angles(
						camx/2,
						camy/2-math.cos(tick()*10)*(crelativevel.Magnitude/250),
						(-camy/2)+math.sin(tick()*10)*(crelativevel.Magnitude/70)-(clampvelx/60))
							* CFrame.new(
								1+math.sin(tick()*10)*(crelativevel.Magnitude/150),
								-0.4-math.cos(tick()*20)*(crelativevel.Magnitude/150),
								0)
							* CFrame.Angles(
								math.rad(-20),
								(math.pi/2),
								0), delta*10)
				end
			end
			mpart.CFrame = cam.CFrame * offset
			lastcameracf = cam.CFrame
			ticktofireserver = ticktofireserver + delta
			if ticktofireserver > 0.1 then
				remote:FireServer("1", (mouse.Hit.p-head.CFrame.p).unit.y)
				ticktofireserver = 0
			end
		else
			rstepgun:Disconnect()
		end
		frametick = tick()
	end)
end)
mouse.KeyDown:Connect(function(key)
	if state == "equipped" then
		key = key:lower()
		if key == "f" then
			remote:FireServer("3")
		elseif key == "r" then
			remote:FireServer("4")
		elseif key:byte() == 48 then
			remote:FireServer("6", true)
		end
	end
end)
mouse.KeyUp:Connect(function(key)
	if state == "equipped" then
		key = key:lower()
		if key:byte() == 48 then
			remote:FireServer("6", false)
		end
	end
end)
mouse.Button2Down:Connect(function()
	if state ~= "unequipped" then
		ads(true)
	end
end)
mouse.Button2Up:Connect(function()
	if state ~= "unequipped" then
		ads(false)
	end
end)
tool.Activated:Connect(function()
	if state == "equipped" then
		shoottick = tick()
		state = "shooting"
		local btick = shoottick
		while shoottick == btick and state == "shooting" and humanoid.Health > 0 do
			if binmag.Value > 0 or bchambered.Value > 0 then
				remote:FireServer("2", mouse.Hit.p)
				task.wait(gunspeed.Value)
			else break end
		end
		if state == "shooting" then
			state = "equipped"
		end
	end
end)
tool.Deactivated:Connect(function()
	if state == "shooting" then
		state = "equipped"
	end
end)
tool.Unequipped:Connect(function()
	state = "unequipped"
	gui.Parent = tool
	viewmodel:Destroy()
	guntransparency(0)
	if adsing then
		ads(false)
	end
	cam.FieldOfView = savedfov
	currentlyfps = false
	recoilcf = CFrame.new()
	humanoid.AutoRotate = true
end)


Prompt: -- LOCAL FUNCTIONS

Response:
local function dictLength(dictionary)
	local count = 0
	for _, _ in pairs(dictionary) do
		count += 1
	end
	return count
end

local function fillOccupants(zonesAndOccupantsTable, zone, occupant)
	local occupantsDict = zonesAndOccupantsTable[zone]
	if not occupantsDict then
		occupantsDict = {}
		zonesAndOccupantsTable[zone] = occupantsDict
	end
	local prevCharacter = occupant:IsA("Player") and occupant.Character
	occupantsDict[occupant] = (prevCharacter or true)
end

local heartbeatActions = {
	["player"] = function(recommendedDetection)
		return ZoneController._getZonesAndItems("player", activeZones, activeZonesTotalVolume, true, recommendedDetection)
	end,
	["localPlayer"] = function(recommendedDetection)
		local zonesAndOccupants = {}
		local character = localPlayer.Character
		if not character then
			return zonesAndOccupants
		end
		local touchingZones = ZoneController.getTouchingZones(character, true, recommendedDetection, trackers.player)
		for _, zone in pairs(touchingZones) do
			if zone.activeTriggers["localPlayer"] then
				fillOccupants(zonesAndOccupants, zone, localPlayer)
			end
		end
		return zonesAndOccupants
	end,
	["item"] = function(recommendedDetection)
		return ZoneController._getZonesAndItems("item", activeZones, activeZonesTotalVolume, true, recommendedDetection)
	end,
}


Prompt:
--[=[
	Switches the result to a brio, and ensures only the last brio lives.

	@since 3.6.0
	@function switchToBrio
	@return (source: Observable<T>) -> Observable<Brio<T>>
	@within RxBrioUtils
]=]

Response:
RxBrioUtils.switchToBrio = Rx.pipe({
	RxBrioUtils.toBrio();
	RxBrioUtils.onlyLastBrioSurvives();
})

return RxBrioUtils


Prompt:
--[=[
	Utility function that loads a translator from a folder or a table.
	@class JSONTranslator
]=]

Response:
local require = require(script.Parent.loader).load(script)

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

local JsonToLocalizationTable = require("JsonToLocalizationTable")
local PseudoLocalize = require("PseudoLocalize")
local LocalizationServiceUtils = require("LocalizationServiceUtils")
local Promise = require("Promise")
local Observable = require("Observable")
local Maid = require("Maid")
local Blend = require("Blend")
local Rx = require("Rx")

local JSONTranslator = {}
JSONTranslator.ClassName = "JSONTranslator"
JSONTranslator.__index = JSONTranslator


Prompt: --------RIGHT DOOR 6--------

Response:
game.Workspace.doorright.l73.BrickColor = BrickColor.new(135)
game.Workspace.doorright.l72.BrickColor = BrickColor.new(135)
game.Workspace.doorright.l71.BrickColor = BrickColor.new(135)
game.Workspace.doorright.l63.BrickColor = BrickColor.new(135)
game.Workspace.doorright.l62.BrickColor = BrickColor.new(135)
game.Workspace.doorright.l61.BrickColor = BrickColor.new(135)
game.Workspace.doorright.l53.BrickColor = BrickColor.new(135)
game.Workspace.doorright.l52.BrickColor = BrickColor.new(135)
game.Workspace.doorright.l51.BrickColor = BrickColor.new(135)
game.Workspace.doorright.l43.BrickColor = BrickColor.new(135)
game.Workspace.doorright.l42.BrickColor = BrickColor.new(135)
game.Workspace.doorright.l41.BrickColor = BrickColor.new(135)
game.Workspace.doorright.l32.BrickColor = BrickColor.new(135)
game.Workspace.doorright.l31.BrickColor = BrickColor.new(135)
game.Workspace.doorright.l21.BrickColor = BrickColor.new(135)

game.Workspace.doorright.l11.BrickColor = BrickColor.new(102)
game.Workspace.doorright.l12.BrickColor = BrickColor.new(102)
game.Workspace.doorright.l13.BrickColor = BrickColor.new(102)
game.Workspace.doorright.l22.BrickColor = BrickColor.new(102)
game.Workspace.doorright.l23.BrickColor = BrickColor.new(102)
game.Workspace.doorright.l33.BrickColor = BrickColor.new(102)


Prompt:
--[=[
	Base UI object with visibility and a maid. BasicPane provides three points of utility.

	1. BasicPane contain visibility API. It's very standard practice to use the VisibleChanged event and
	pass visibility up or down the entire stack.

	```lua
	-- Standard visibility chaining
	self._maid:GiveTask(self.VisibleChanged:Connect(function(isVisible, doNotAnimate)
		self._otherComponent:SetVisible(isVisible, doNotAnimate)
	end))
	```

	2. BasicPane contains a maid which cleans up upon :Destroy(). This just saves some time typing.

	3. Finally, BasicPanes, by convention (although not requirement), contain a .Gui object which can generally
	be safely reparented to another object.

	@class BasicPane
]=]

Response:
local require = require(script.Parent.loader).load(script)

local Signal = require("Signal")
local Maid = require("Maid")

local BasicPane = {}
BasicPane.__index = BasicPane
BasicPane.ClassName = "BasicPane"


Prompt:
------------
--[[CODE]]--
------------

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

local Offset = Vector3.new()

local Player = Players.LocalPlayer

function Update()
	local Character = Player.Character --I'll have this here, should the script be in StarterPlayerScripts
	local Camera = workspace.CurrentCamera --In case they delete the camera or something.
	if not Character then
		return
	end

	local Humanoid = Character:WaitForChild("Humanoid")
	local HumanoidRootPart = Character:WaitForChild("HumanoidRootPart")
	local Head = Character:WaitForChild("Head")

	for Index, Item in ipairs(Character:GetChildren()) do
		if Item:IsA("BasePart") then
			if Item.Name ~= "Head" then
				Item.LocalTransparencyModifier = 0
			end
		elseif Item:IsA("Accoutrement") then
			local Handle = Item:FindFirstChild("Handle")
			if Handle then
				local ConnectedToHead = (Handle:FindFirstChild("HatAttachment") or Handle:FindFirstChild("HairAttachment") or Handle:FindFirstChild("FaceAttachment") or Handle:FindFirstChild("NeckAttachment")) ~= nil
				if ConnectedToHead then
					if ViewAccessories and ViewHeadAccessories then
						Handle.LocalTransparencyModifier = 1
					end
				else
					if ViewAccessories then
						Handle.LocalTransparencyModifier = 1
					end
				end
			end
		end
	end

	if (RealisticView and Player.CameraMode == Enum.CameraMode.LockFirstPerson)
		or (Character:WaitForChild("Head").LocalTransparencyModifier == 1) then
		--Above: Adding [or (Character:WaitForChild("Head").LocalTransparencyModifier == 1)] will make it so we can
		--detect if the player is in first-person
		local Origin = Camera.CFrame
		local Out = Camera.CFrame * CFrame.new(0, 0, -1)
		local Y_Diff = (Origin.Y - Out.Y) * -1
		local Z_Diff = 0
		local Extra_X = 0
		local Extra_Y = 1.5

		local Camera_Offset = Vector3.new(0, 0, math.min(Y_Diff - Z_Diff, 0))

		--Update #2: R15 offsets cause issues with this code block. This next one will fix that.
		local UpperTorso = Character:FindFirstChild("UpperTorso")
		if UpperTorso then
			local OffsetVal = HumanoidRootPart.CFrame:toObjectSpace(Head.CFrame).p
			Offset = Camera_Offset + (OffsetVal - Vector3.new(0, 2, 0))
		else
			Offset = Camera_Offset
		end

		Humanoid.CameraOffset = Offset
	else
		Humanoid.CameraOffset = Vector3.new()
	end
end

if AutoLockFirstPerson then
	Player.CameraMode = Enum.CameraMode.LockFirstPerson
end

RunService.RenderStepped:Connect(Update)


Prompt:
-- Отображение глобальной статистики с учётом DataStore2 значения
-- Что больше, то и будет результатом

Response:
local ServerScriptService = game:GetService("ServerScriptService") -- берём ссылку на сервис серверных скриптов
local DataStore2 = require(ServerScriptService.DataStore2) -- если скачали модуль и залили в игру
BASE = game.Workspace.BASE.Value
DataParam="Death"	-- ключ для баз DataStoreService и DataStore2
DataStore2.Combine(BASE,DataParam)

local tmp, DonateStore

local sg = script.Parent --Surface GUI
local sample = script:WaitForChild("Sample") --Our Sample frame
local sf = sg:WaitForChild("ScrollingFrame") --The scrolling frame
local ui = sf:WaitForChild("UI") --The UI list layout


Prompt:
--[[
		___      _______                _
	   / _ |____/ ___/ /  ___ ____ ___ (_)__
	  / __ /___/ /__/ _ \/ _ `(_-<(_-</ (_-<
	 /_/ |_|   \___/_//_/\_,_/___/___/_/___/
 						SecondLogic @ Inspare
]]

Response:
local autoscaling	= true				--Estimates top speed

local UNITS	= {								--Click on speed to change units
											--First unit is default
	{
		units			= "MPH"				,
		scaling			= (10/12) * (60/88)	, -- 1 stud : 10 inches | ft/s to MPH
		maxSpeed		= 180				,
		spInc			= 20				, -- Increment between labelled notches
	},

	{
		units			= "KM/H"			,
		scaling			= (10/12) * 1.09728	, -- 1 stud : 10 inches | ft/s to KP/H
		maxSpeed		= 300				,
		spInc			= 40				, -- Increment between labelled notches
	},

	{
		units			= "SPS"				,
		scaling			= 1					, -- Roblox standard
		maxSpeed		= 320				,
		spInc			= 40				, -- Increment between labelled notches
	}
}


Response:
local sprinting = false

local function sprint(name, IS, context)
	if IS == Enum.UserInputState.Begin then
		runSound.PlaybackSpeed = 4 -- Changes the playback speed that the running sound plays at during sprinting, replace 4 with your desired playback speed if wanted
		char.Humanoid.WalkSpeed = 32
		-- Sets player speed to 32, replace 32 with your desired speed if wanted
		sprinting = true
		while stamPower > 0 and sprinting == true do
			stamPower = stamPower - stamTick
			bar.Size = UDim2.new(stamPower / 100, 0, 1, 0)
			BigFOV:Play()
			wait()
			if stamPower <= 0 then
				runSound.PlaybackSpeed = 2
				char.Humanoid.WalkSpeed = 16
				SmallFOV:Play()
			end
		end
	elseif IS == Enum.UserInputState.End then
		runSound.PlaybackSpeed = 2 -- Resets the playback speed to its original value, recommended to leave as is
		char.Humanoid.WalkSpeed = 16 -- Sets player speed to 16 (Roblox game default), if you change your Roblox game's default player speed, replace 16 with the new value
		sprinting = false
		while stamPower <= 100 and sprinting == false do
			stamPower = stamPower + regenTick
			if stamPower > 100 then
				stamPower = 100
			end
			bar.Size = UDim2.new(stamPower / 100, 0, 1, 0)
			SmallFOV:Play()
			wait()
		end
	end
end


Prompt: -- Decompiled with the Synapse X Luau decompiler.

Response:
function MakeWeld(p1, p2, p3, p4)
	if p3 == nil then
		p3 = "Weld";
	end;
	local v1 = Instance.new(p3);
	v1.Part0 = p1;
	v1.Part1 = p2;
	v1.C0 = p1.CFrame:inverse() * p1.CFrame;
	v1.C1 = p2.CFrame:inverse() * p1.CFrame;
	v1.Parent = p1;
	if p3 == "Motor" then
		if p4 ~= nil then
			v1.MaxVelocity = p4;
		end;
	end;
	return v1;
end;
function ModelWeld(p5, p6)
	if p5:IsA("BasePart") then
		MakeWeld(p6, p5, "Weld");
		return;
	end;
	if p5:IsA("Model") then
		local v2, v3, v4 = pairs(p5:GetChildren());
		while true do
			local v5, v6 = v2(v3, v4);
			if v5 then

			else
				break;
			end;
			v4 = v5;
			ModelWeld(v6, p6);
		end;
	end;
end;
car = script.Parent.Parent.Parent;
misc = car:WaitForChild("Misc");
car.DriveSeat.ChildAdded:connect(function(p7)
	if p7.Name == "SeatWeld" and p7:IsA("Weld") and game.Players:GetPlayerFromCharacter(p7.Part1.Parent) ~= nil then
		p7.C0 = CFrame.new(-1, -0.5, 0) * CFrame.fromEulerAnglesXYZ(-(math.pi / 2), 0, 0);
	end;
end);
return {};


Response:
local TwinService = game:GetService("TweenService")
local AnimationHighLight = TweenInfo.new(1, Enum.EasingStyle.Sine ,Enum.EasingDirection.InOut)
local Info1 = {Position = Vector3.new(pos1,Positionn,pos3)}
local Info2 = {Position = Vector3.new(pos1,Positionn2,pos3)}
local AnimkaUp = TwinService:Create(Danger, AnimationHighLight, Info1 )
local AnimkaDown = TwinService:Create(Danger, AnimationHighLight, Info2 )
while true do
	AnimkaUp:Play()
	wait(2)
	AnimkaDown:Play()
	wait(2)
end