class documentation