Player List Team Layout Order Help

Hey, so I am attempting to use LayoutOrder in order to add teams to my custom player list. Below is a script called “TeamHandler”, when I run it, unfortunately the team doesn’t even show up in the leaderboard. I can’t figure out why this is happening, but some help would really be appreciated.

local TeamStorage = game.StarterGui.PlayerList.TeamStorage
local Teams = game:GetService("Teams")
local AllTeams = Teams:GetTeams()
local PS = game:GetService("Players")
local ListStorage = script.Parent.Frame.ScrollingFrame
local RedLayoutOrder = 3
local BlueLayoutOrder = 1

function AddTeam(player)
	for i,v in pairs(PS:GetPlayers()) do
		if game.Teams[v.Team] then
			if v.Team == game.Teams.TeamBlue then
				local Clone = TeamStorage.TeamBlue:Clone()
				Clone.Parent = ListStorage
				Clone.Visible = true
			end
			
			if v.Team == game.Teams.TeamRed then
				local Clone1 = TeamStorage.TeamRed:Clone()
				Clone1.Parent = ListStorage
				Clone1.Visible = true
			end
		end
	end
end

PS.PlayerAdded:Connect(function(player)
	local PlayersTemplate = script.Parent.Frame.ScrollingFrame:FindFirstChild(player.Name)
	AddTeam(player)
	PlayersTemplate.LayoutOrder = ListStorage[player.Team.Name].LayoutOrder + 1
	
	player:GetPropertyChangedSignal("Team"):Connect(function()
		for i,v in pairs(PS:GetPlayers()) do
			local PlayersTeam = player.Team.Name
			local ReferenceOrder = PlayersTeam.LayoutOrder
			for i,c in pairs(ListStorage:GetChildren()) do
				if c.LayoutOrder == ReferenceOrder + 1 then
					PlayersTeam:Destroy()
				end
			end
		end
	end)
end)