refactoring + renaming