separate Input and Output