have some bugs in parser