basic line read-and-decide structure in place