added Line.choose