separate update and make