rename some methods and add more comments
testing