starting to document functions