Add documentation for protect and returns