Added I/O channel implementation