Tested all other methods & refactored