parser and line numbering