refactor
modify parsing algo
Add test parsing