documented class
documented function