Help with raycasting

I am trying to anti no clip and I keep getting and error
“attempt to index nil with .Instance”

local cast1 = workspace:Raycast(playerState.lastPosition, CFrame.lookAt(playerState.lastPosition, character:FindFirstChild("HumanoidRootPart").CFrame.Position).LookVector, playerRaycastParams)
local cast2 = workspace:Raycast(character:FindFirstChild("HumanoidRootPart").CFrame.Position, CFrame.lookAt(character:FindFirstChild("HumanoidRootPart").CFrame.Position, playerState.lastPosition).LookVector, playerRaycastParams)
	if cast1.Instance and cast2.Instance then
		local depth = (cast1.Position - cast2.Position).Magnitude
		if depth > THRESHOLD then

		end
	elseif cast1.Instance and not cast2.Instance then
				
	end

I am assuming the error is occurring on line 3.

When the raycast does not hit anything, the Raycast function returns nil.

Instead of using not cast2.Instance you need to check if cast2 actually exists or not. This is what I would recommend:

if cast1 then
    if cast2 then -- if cast1 and cast2 exist
    
    else -- if cast1 exists, but not cast2

    end
end