added event dispatcher
added util test