add sio i/o