implemented stream router