Parser class redesigned