channel refactor; say works