add CSV parser and cover by test