Use only one channel + refactor