streaming events rework - part 1