parsed line by line