completing hooks and events flow, need to check error handler