type -> io_type