refactored update branch