create and manage events