updated csv parser