updated methods, need to add more docstrings