refactored channels checks