public Car Pull()
    {
        if (IsOccupied && currentCar.IsStopped)
        {
            var car = currentCar;
            currentCar = Prev != null && Prev.IsOccupied ? Prev.Pull() : null;
            if (currentCar != null)
            {
                currentCar.MoveTo(transform);
            }

            return(car);
        }

        return(null);
    }