refactored some of the change methods