input and output is so important