add some docstrings.