implement separateChannels