channels are now objects