added line intersection functions