added assertion for :in and :out channels