Added EventEmitter concept