working for one channel of output
basic tests passing for many to many