finished input/output