refactoring documentation