How to lerp multiple objects

so im cloning the same object multiple times, every clone of this object is in other position, im trying to lerp all of those clones from their original position to the same mouseHit.Position. I only achieved lerping 1 of these objects, others are froze.

script:

local rs = game:GetService("ReplicatedStorage")

local remote = rs.RemoteEvent

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

remote.OnServerEvent:Connect(function(p,mouseHit)
for i = 1, 15 do
	sword = rs.Sword0:Clone()
	sword.Color = Color3.new(1, 1, 1)
	sword.Parent = game.Workspace
	sword.Position = Vector3.new(math.random(-5,5),30,math.random(-5,5)) +  mouseHit.Position
	startPoint = sword.Position
	sword.CFrame = sword.CFrame * CFrame.Angles(0,math.random(-180,180),0)
	
end

for i = 0,3,0.045 do
	local t = i/3
	
	local endPoint = mouseHit.Position
	
	local l1 = lerp(startPoint,endPoint,t)
	sword.Position = l1
	task.wait()
end	
end)

try housing the lerp inside the for loop.

for i = 1, 15 do
    local newSword = rs.Sword0:Clone()
    -- change the properties as you wish

    for l = 0,3,0.045 do
        -- lerping stuff
    end
end