comm emitting refactoring