documentation for the method