add hooker