modify hooks