parser half way done