refactoring side-by-side