io_api almost complete
compile ok