added some generic event hooks