rewrited arithmetic parser, some improvement