More advanced line reading with tiemeouts