basic parser functionality