Completed the hook, minus option to call back for override