Global Leaderboard Few Bugs How Do I Fix?

these are the problems:

local DataStoreService = game:GetService("DataStoreService")
local TimeODS = DataStoreService:GetOrderedDataStore("lbSaved_1")


local timeUntilReset = 3


while wait(1) do


	timeUntilReset = timeUntilReset - 1

	script.Parent.Countdown.Text = timeUntilReset


	if timeUntilReset == 0 then

		timeUntilReset = 10


		for i, plr in pairs(game.Players:GetPlayers()) do

			TimeODS:SetAsync(plr.UserId, plr.leaderstats.Fish.Value)
		end

		for i, leaderboardRank in pairs(script.Parent:GetChildren()) do

			if leaderboardRank:IsA("Frame") then
				leaderboardRank:Destroy()
			end
		end


		local success, errorMsg = pcall(function()

			local data = TimeODS:GetSortedAsync(false, 5)
			local coinsPage = data:GetCurrentPage()

			for rankInLB, dataStored in ipairs(coinsPage) do


				local name = game.Players:GetNameFromUserIdAsync(tonumber(dataStored.key))
				local coins = dataStored.Value


				local template = script.Template:Clone()

				template.Parent = script.Parent.ScrollingFrame

				template.Name = name .. "Leaderboard"

				template.PlrName.Text = name

				template.Rank.Text = "#" .. rankInLB

				template.Minutes.Text = coins

			end         
		end)
	end
end