#53 extract class Channel