basic event creation implemented