defining I/O