reworked parts of the parsers