add comments describing functions