added dynamic channel list