Improved the parsing engine