changes in parser to handle numbers correctly