* refactored updates