Help With Debuggins Track Switch Scripts

It looks like a jumbled mess but I am attempting to make a track switch script that relies on a switch state so I can incorperate sensors to automatically align the switch to a train without derailment. Something is not working and I honestly being the amatuer I am, am having issues.

It should switch states upon click but it does not and gives back an error in the output which is foreign to me. Work with me here, I do have learning troubles so if its a simple fix, forgive me.

local Turnout = script.Parent
local SwitchLeftCosmetic = Turnout.SwitchLeft1
local SwitchRightCosmetic = Turnout.SwitchRight1
local SwitchLeftCosmetic2 = Turnout.SwitchLeft2
local SwitchRightCosmetic2 = Turnout.SwitchRight2
local SwitchLeftMech = Turnout.TurnMechanism.TurnoutLeft
local SwitchRIghtMech = Turnout.TurnMechanism.TurnoutRight

local LeftSensor = Turnout.TurnMechanism.LeftCensor
local RightSensor = Turnout.TurnMechanism.RightSensor
local SwitchMechanism = Turnout.TurnoutMech

local ClickDetec = SwitchMechanism.Clicker.ClickDetector

local AlignmentState = Turnout.Value

ClickDetec.MouseClick:Connect(function(BeenClicked)
	if AlignmentState.Value == "0" then
		for i,v in pairs(SwitchLeftCosmetic:GetChildren()) do
			v.CanCollide = true
			v.Transparency = 0
		end
		for i,v in pairs(SwitchRightCosmetic:GetChildren()) do
			v.CanCollide = false
			v.Transparency = 1
		end
		for i,v in pairs(SwitchRightCosmetic2:GetChildren()) do
			v.CanCollide = true
			v.Transparency = 0
		end
		for i,v in pairs(SwitchRightCosmetic2:GetChildren()) do
			v.CanCollide = false
			v.Transparency = 1
		end
		for i,v in pairs(SwitchLeftMech:GetChildren()) do
			v.CanCollide = true
		end
		for i,v in pairs(SwitchRIghtMech:GetChildren()) do
			v.CanCollide = false
		end
		SwitchMechanism.State1.CanCollide = false
		SwitchMechanism.State1.Transparency = 1
		
		SwitchMechanism.State2.CanCollide = true
		SwitchMechanism.State2.Transparency = 0
		
		AlignmentState.Value = "1"
		print("SwitchedRight")
	elseif AlignmentState.Value == "1" then
		for i,v in pairs(SwitchLeftCosmetic:GetChildren()) do
			v.CanCollide = false
			v.Transparency = 1
		end
		for i,v in pairs(SwitchRightCosmetic:GetChildren()) do
			v.CanCollide = true
			v.Transparency = 0
		end
		for i,v in pairs(SwitchRightCosmetic2:GetChildren()) do
			v.CanCollide = false
			v.Transparency = 1
		end
		for i,v in pairs(SwitchRightCosmetic2:GetChildren()) do
			v.CanCollide = true
			v.Transparency = 0
		end
		for i,v in pairs(SwitchLeftMech:GetChildren()) do
			v.CanCollide = false
		end
		for i,v in pairs(SwitchRIghtMech:GetChildren()) do
			v.CanCollide = true
		end
		SwitchMechanism.State1.CanCollide = true
		SwitchMechanism.State1.Transparency = 0

		SwitchMechanism.State2.CanCollide = false
		SwitchMechanism.State2.Transparency = 1

		AlignmentState.Value = "0"
		print("SwitchedLeft")
	end
	script.Parent.TurnoutMech.Clicker.ClickDetector.MouseClick:Connect(BeenClicked)
end)

LeftSensor.Touched:Connect(function(TouchLeft)
	if not TouchLeft:FindFirstChild("TrainSensor") then
		return
	end
	
	if AlignmentState.Value == "0" then
		for i,v in pairs(SwitchLeftCosmetic:GetChildren()) do
			v.CanCollide = true
			v.Transparency = 0
		end
		for i,v in pairs(SwitchRightCosmetic:GetChildren()) do
			v.CanCollide = false
			v.Transparency = 1
		end
		for i,v in pairs(SwitchRightCosmetic2:GetChildren()) do
			v.CanCollide = true
			v.Transparency = 0
		end
		for i,v in pairs(SwitchRightCosmetic2:GetChildren()) do
			v.CanCollide = false
			v.Transparency = 1
		end
		for i,v in pairs(SwitchLeftMech:GetChildren()) do
			v.CanCollide = true
		end
		for i,v in pairs(SwitchRIghtMech:GetChildren()) do
			v.CanCollide = false
		end
		SwitchMechanism.State1.CanCollide = false
		SwitchMechanism.State1.Transparency = 1

		SwitchMechanism.State2.CanCollide = true
		SwitchMechanism.State2.Transparency = 0

		AlignmentState.Value = "1"
		
		
		
	end
end)

RightSensor.Touched:Connect(function(RightTouch)
	if not RightTouch:FindFirstChild("TrainSensor") then
		return
	end
	
	if AlignmentState.Value == "1" then
		for i,v in pairs(SwitchLeftCosmetic:GetChildren()) do
			v.CanCollide = false
			v.Transparency = 1
		end
		for i,v in pairs(SwitchRightCosmetic:GetChildren()) do
			v.CanCollide = true
			v.Transparency = 0
		end
		for i,v in pairs(SwitchRightCosmetic2:GetChildren()) do
			v.CanCollide = false
			v.Transparency = 1
		end
		for i,v in pairs(SwitchRightCosmetic2:GetChildren()) do
			v.CanCollide = true
			v.Transparency = 0
		end
		for i,v in pairs(SwitchLeftMech:GetChildren()) do
			v.CanCollide = false
		end
		for i,v in pairs(SwitchRIghtMech:GetChildren()) do
			v.CanCollide = true
		end
		SwitchMechanism.State1.CanCollide = true
		SwitchMechanism.State1.Transparency = 0

		SwitchMechanism.State2.CanCollide = false
		SwitchMechanism.State2.Transparency = 1

		AlignmentState.Value = "0"
		print("SwitchedLeft")
	end
end)



Any help is appreciated,. I am just heavily uneducated with advanced coding. Thanks for any help in advance.

Side note, somewhat dyslexic

Apologies if this is all over the place