refactoring w/o compiling