partial functions for channels