so theres gate 1 and gate 2 they both use the same method, tweenservice, however gate 1 seems to be glitching after 2nd activation, anybody has a solution?

Video Preview: https://youtu.be/8hRhMCRvx6U

Gate 1 Code:

local info = TweenInfo.new(3,Enum.EasingStyle.Quad,Enum.EasingDirection.Out,0,true,0)
local goal = {}
goal.Orientation = Vector3.new(0, 90, 0)
goal.Position = Vector3.new(-169.645, 91.525, -182.986)
local tween = game:GetService("TweenService"):Create(script.Parent,info,goal)
local info2 = TweenInfo.new(3,Enum.EasingStyle.Quad,Enum.EasingDirection.Out,0,true,0)
local goal2 = {}
goal2.Orientation = Vector3.new(0, -90, 0)
goal2.Position = Vector3.new(-169.74, 86.947, -186.222)
local tween2 = game:GetService("TweenService"):Create(script.Parent.Part,info2,goal2)
tween2:Play()
tween:Play()

Gate 2 Code:

local info = TweenInfo.new(3,Enum.EasingStyle.Quad,Enum.EasingDirection.Out,0,true,0)
local goal = {}
goal.Orientation = Vector3.new(0,90,0)
goal.Position = Vector3.new(-194.512, 91.522, -183.052)
local tween = game:GetService("TweenService"):Create(script.Parent,info,goal)
local info2 = TweenInfo.new(3,Enum.EasingStyle.Quad,Enum.EasingDirection.Out,0,true,0)
local goal2 = {}
goal2.Orientation = Vector3.new(0, 90, 0)
goal2.Position = Vector3.new(-194.417, 86.928, -185.867)
local tween2 = game:GetService("TweenService"):Create(script.Parent.Part,info2,goal2)
tween:Play()
tween2:Play()