+ docstrings + coverage