Channels instead of injection