added HookListener with specs