input and output translations, all unit tests pass