printable refactor