parser and scanner