Why does this team pay script not work. Please help me. I need this for my roleplay game.

local Wages = {
	   ["Civilian"]                           = {Pay = 25, Interval = 1},
	   ["Calgary Police Department"]          = {Pay = 25, Interval = 1},
	   ["Calgary Fire and Rescue Services"]   = {Pay = 25, Interval = 1},
	   ["Calgary Ambulance Services"]         = {Pay = 25, Interval = 1},
	   ["Alberta Sheriffs Department"]        = {Pay = 25, Interval = 1},
	   ["TEAM"]                               = {Pay = 25, Interval = 1},
	   ["TEAM"]                               = {Pay = 25, Interval = 1},
	   ["TEAM"]                               = {Pay = 25, Interval = 1},
	   ["TEAM"]                               = {Pay = 25, Interval = 1},
	   ["TEAM"]                               = {Pay = 25, Interval = 1},
	   ["TEAM"]                               = {Pay = 25, Interval = 1},
	   ["TEAM"]                               = {Pay = 25, Interval = 1},
	   ["TEAM"]                               = {Pay = 25, Interval = 1},
	   ["TEAM"]                               = {Pay = 25, Interval = 1},
	   ["TEAM"]                               = {Pay = 25, Interval = 1},
	   ["TEAM"]                               = {Pay = 25, Interval = 1},
	   ["TEAM"]                               = {Pay = 25, Interval = 1}
}

for Team, Data in pairs(Wages) do
    coroutine.wrap(function ()
        while true do
            wait(Data.Interval)
            for _, Player in pairs(Teams[Team]:GetPlayers()) do
                		if Player:FindFirstChild("leaderstats") then
         Player.leaderstats[currencyname].Value = Player.leaderstats[currencyname].Value+ Data.Pay
                end
            end
        end
    end)()
end