documentation for functions.