fixed balance update bug