parse by line