parser
reverse while parsing