updated the documentation and added verification before trigger callbacks