prototype of parsing functions