fixing and refactoring