Abstract host_write & host_open/close