only generate the line objects once. add exception for no such line