renamed hook generator