Shouldn't we be using customeventemitter here?