different types of result emitters