racket-5
refactoring