use subscribers instead of listeners so that they know their priority (end of part 9)