updating hook lifecycle (before, insteadof, after, ...)