more on candidate lines
generalising candidate lines