add update hooks