functions with code and comments