clarify when hooks are executed