adds arbitrary channel support