implemented line_detector