finished the intersect, deflect, and fling methods