using I/O standard