add swim input/output