adjusted input/output classes to more generic classes