added documentation for public methods