Abstracted channels, much better now