refactor of Emitters constructor