- added channel factory