full corrections for refactoring