refactoring/updates